如何使这个正则表达式匹配我想要的输入

时间:2013-07-16 16:10:35

标签: java regex

我尝试将以下字符串中的“MY WEIGHT”匹配。我正在使用Java的String类来进行正则表达式匹配:

String line = "MY WEIGHT:200";
String s = "^(MY WEIGHT).";
line.matches(s);

但它总是返回false。然后我尝试s="MY WEIGHT",但它也不起作用。这有什么问题?

2 个答案:

答案 0 :(得分:1)

两者不匹配:.匹配字符但line"MY WEIGHT"后有4个字符 - 您的意思是.* (至少0个字符)或.+(至少1个字符)?

答案 1 :(得分:1)

String .match必须将整个字符串与正则表达式匹配,而不仅仅是子字符串。这就是s="MY WEIGHT"无效的原因。

String s =“^(MY WEIGHT)。*”;

会匹配。如果您更具体地了解自己的需求,那么构建更具体的正则表达式会更容易。

相关问题