Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何检测字符串中的最后一个字符是否不是字母?_Java_Regex - Fatal编程技术网

Java 如何检测字符串中的最后一个字符是否不是字母?

Java 如何检测字符串中的最后一个字符是否不是字母?,java,regex,Java,Regex,如何在Java中检测字符串中的最后一个字符是否不是带有regex的字母 ^.*?[^A-Za-z]$ 你的表情应该有用。然而,一个更简单的版本str.matches(“.[^a-Za-z]”)也可以用你的表达式应该可以用。然而一个更简单的版本str.matches(“.[^a-Za-z]”)也可以用我知道它没有直接回答这个问题,因为它没有使用正则表达式,但在这种情况下,这样做会不会更清楚 Character.isLetter(s.charAt(s.length()-1)) 其中s是您的字符串

如何在Java中检测字符串中的最后一个字符是否不是带有regex的字母

^.*?[^A-Za-z]$

你的表情应该有用。然而,一个更简单的版本
str.matches(“.[^a-Za-z]”)也可以用

你的表达式应该可以用。然而一个更简单的版本
str.matches(“.[^a-Za-z]”)也可以用

我知道它没有直接回答这个问题,因为它没有使用正则表达式,但在这种情况下,这样做会不会更清楚

Character.isLetter(s.charAt(s.length()-1))

其中
s
是您的字符串。

我知道它没有直接回答问题,因为它不使用正则表达式,但在这种情况下,这样做会不会更清楚

Character.isLetter(s.charAt(s.length()-1))

其中
s
是您的字符串。

您当前的正则表达式不起作用吗?在我看来是这样的。您的正则表达式应该起作用。问题是什么?与“使用非字母结尾字符匹配字符串”和“使用字母结尾字符不匹配字符串”之间的区别是空字符串的匹配方式。因此,根据需要,请尝试
str.matches(“.*\\P{L}”)
!str.matches(.*\\P{L}”)
。在if语句!str.substring(str.length()-1)中尝试此条件。matches([a-zA-Z])您当前的正则表达式不工作吗?在我看来是这样的。您的正则表达式应该可以工作。问题是什么?与“不匹配字符串与字母最终字符”之间的区别是空字符串的匹配方式。因此,根据您的需要,请尝试
str.matches(.*\\P{L})
!str.matches(.*\\p{L}”)
。请在if语句!str.substring(str.length()-1).matches(“[a-zA-Z]”)中尝试此条件