![](/img/trans.png)
[英]Regular expression to fetch lines evaluating only one part of a string, java
[英]Java Regular Expression not evaluating
我有一个经常更改的字符串,其形式为:
*** START OF THIS PROJECT FILENAME ***
其中FILENAME在不同实例中可以是多个单词。 我尝试运行正则表达式:
Pattern.matches("\\*\\*\\* START OF THIS PROJECT ", line);
其中line等于一个这样的字符串。 我还尝试使用Matcher,其中beginingFileFilePatter也设置为与上面相同的regex模式:
Matcher beginFileAccelerator;
beginFileAccelerator = beginningOfFilePattern.matcher(line);
if (beginFileAccelerator.find()
//Do Something
我已经尝试了至少30种不同的正则表达式组合,但我根本找不到解决方案。 如果有人可以吸引我的眼球,我将不胜感激。
Pattern.matches
尝试将整个字符串与模式匹配,因为在Matcher#matches
它使用Matcher#matches
,它表示:
尝试根据图案匹配整个区域。
在您的情况下,最后将失败,因为输入的结尾不是"PROJECT "
。 之后还有更多。
要允许最后添加任何内容,请添加.*
:
Pattern.matches("\\*\\*\\* START OF THIS PROJECT .*", line)
// Here -----------------------------------------^
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.