Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我试图从以下字符串中匹配“我的体重”。我正在使用 Java 的 String 类进行正则表达式匹配:
String line = "MY WEIGHT:200"; String s = "^(MY WEIGHT)."; line.matches(s);
但它总是返回 false。然后我尝试s="MY WEIGHT"了,但它也不起作用。这里有什么问题?
s="MY WEIGHT"
字符串.match必须将整个字符串与正则表达式匹配,而不仅仅是一个子字符串。这就是为什么s="MY WEIGHT"也不起作用。
.match
字符串 s = "^(我的体重).*";
会匹配。如果您更具体地了解您的需求,那么构建更具体的正则表达式会更容易。
两者不匹配:.匹配单个字符但line后面有 4 个字符"MY WEIGHT"- 您的意思是.*(至少 0 个字符)还是.+(至少 1 个字符)?
.
line
"MY WEIGHT"
.*
.+