为了账号安全,请及时绑定邮箱和手机立即绑定

.contains 方法是否有所有大写字母的正则表达式?

.contains 方法是否有所有大写字母的正则表达式?

慕码人2483693 2021-12-10 12:40:21
我是 Java 的初学者,我正在尝试编写代码,通过该.contains()方法查看字符串中是否有大写字母。有没有一种有效的方式来表达类似的东西string.contains((all capital letters));?
查看完整描述

2 回答

?
HUH函数

TA贡献1836条经验 获得超4个赞

这是来自Pattern的javadoc:


\p{javaLowerCase}   Equivalent to java.lang.Character.isLowerCase()

\p{javaUpperCase}   Equivalent to java.lang.Character.isUpperCase()

下面是一个例子:


class Test {

    public static void main(String[] args) {

      System.out.println(args[0].matches(".*\\p{javaUpperCase}.*"));

    }

}

这是它的工作原理:


$ javac Test.java

$ java Test "hello world"

false


$ java Test "capital F"

true

与[A-Z]变体不同,这适用于所有语言的所有大写字母:


$ java Test 'Σ'  # Greek

true


$ java Test 'Å'  # Norwegian

true


$ java Test 'Я'  # Russian

true


查看完整回答
反对 回复 2021-12-10
?
繁星淼淼

TA贡献1775条经验 获得超11个赞

String.contains不接受正则表达式。它需要一个子字符串,它是纯字符串或另一个CharSequence

如果要检查字符串是否包含大写字母,可以使用正则表达式,如下例所示:

boolean containsUppercase = text.matches("^.*[A-Z].*$")

true如果在文本中的任何地方找到大写字母,那将返回。


查看完整回答
反对 回复 2021-12-10
  • 2 回答
  • 0 关注
  • 204 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信