我正在尝试用java编写正则表达式来匹配字母数字字符串,该字符串可以有*。但是如果它包含*,那么它必须在该字符串的末尾。只能包含一个*
下面的输入应返回true
abcd
abcd*
*
其中,如下所示,输入应返回false
,因为它包含的*不在该字符串的末尾
abc*d
abcd**
我试着写java程序,如下所示,但它不能工作。
public static void main(String[] a){
String pattern = "[a-zA-Z0-9]+[\\*]$";
String test = "abcd*";
System.out.println(test.matches(pattern));
}
它为abcd*
返回true
,但不为abcd
和*
返回
请告诉我如何修复这个正则表达式。谢谢
https://stackoverflow.com/questions/52285478
复制相似问题