回答
matches
自动锚定正则表达式,所以正则表达式必须匹配整个字符串。尝试:
line.matches("==[^=].*")
我记得,方法matches()
只搜索精确匹配。
完全匹配。 – 2010-02-22 22:01:49
这是真的,文档可以更清楚地说明它 - http://java.sun.com/javase/6/docs/api/java/util/regex/Pattern.html – mob 2010-02-22 22:09:02
try line.matches("^==[^=]*==$")
已修复它为雅。 – 2010-02-22 22:03:37
与line.matches("^==(.+?)==\\s*$")
.matches尝试仅仅返回true,如果整条生产线相匹配。在你的情况下,该行必须以'=='开头,并且只包含一个不等于的字符。如果您正在寻找为整个行字符串匹配:
line.matches( “== [^ =] * ==”)
这应该产生==的匹配,后面跟随任意的非等号字符,接着是另一个==。 – TheJacobTaylor 2010-02-22 22:05:35
无赖,小修改移动我的答案看起来比它更新。 – TheJacobTaylor 2010-02-22 22:06:16
如果我没有记错,matches
只会返回如果整行与正则表达式匹配,则返回true。在你的情况下它不会。要使用matches
,您需要扩展正则表达式(使用通配符)以匹配行末。或者,您可以使用Matcher.find()
方法来匹配该行的子字符串
如果它很简单,也可以使用String.startsWith("==");
。
- 1. 为什么.NET匹配我的正则表达式,但Javascript不?
- 2. Perl:为什么我的正则表达式不匹配
- 3. 为什么我的正则表达式不匹配空间
- 4. 为什么regex_match与我的正则表达式不匹配?
- 5. 为什么我的正则表达式在VB.net中不匹配
- 6. 正则表达式不匹配什么,我认为它应该
- 7. 什么是(\\&| $)正则表达式匹配
- 8. '\ $'正则表达式匹配什么?
- 9. 我的正则表达式不匹配
- 10. 正则表达式,匹配什么或不匹配?
- 11. 正则表达式匹配什么不匹配
- 12. 正则表达式不匹配,不知道为什么
- 13. Perl正则表达式 - 为什么正则表达式/[0-9\.]+(\,,)/匹配逗号
- 14. 我的正则表达式不匹配,我不能确定为什么
- 15. 正则表达式的乐趣。为什么这个正则表达式不匹配我的字符串?
- 16. 正则表达式不匹配,但为什么?
- 17. 为什么这个正则表达式在Perl中不匹配?
- 18. 为什么这个正则表达式不匹配?
- 19. 正则表达式问题:为什么不匹配?
- 20. 为什么正则表达式不匹配
- 21. 正则表达式在Perl中不匹配:为什么?
- 22. 为什么阶正则表达式不匹配HTML A HREF
- 23. 为什么这个正则表达式不匹配HTML标签?
- 24. 为什么不提高正则表达式'。{2}'匹配'??'
- 25. 为什么添加组时不匹配正则表达式?
- 26. 为什么这个正则表达式不匹配?
- 27. 这个正则表达式为什么不匹配?
- 28. 为什么不匹配正则表达式?
- 29. 为什么在.htaccess中这个正则表达式不匹配?
- 30. 为什么在这个正则表达式中不匹配?
这是什么语言?如果它是Java,肯定会尝试匹配整条线。这会失败,因为[^ =]最终不匹配,使整行不匹配,返回false – Tarka 2010-02-22 22:02:17