我有三个字符串,其中只有两个必须匹配:
(\w* = [^;]*\.\w\(yj\.class, [^;]*\);)
为了区分前两个字符串与可能存在的其他字符串,我写了这个表达式:
a0 = this.l.a(yj.class, this.bo().b(0.5, 0.0, 0.5)).iterator();
但是现在,发生的事情是前两个字符串得到正确匹配,但是最后一个字符串部分匹配,因为它与前两个字符串有一些相同的模式(最后两个字符串根本不匹配);最后一个匹配如下:
如何防止最后一个字符串完全匹配?我想我应该检查第一个字符是不是空格(SIGTERM
)(或包含一个......)
答案 0 :(得分:0)
/^\w+ = [^;]*\.\w\(yj\.class, [^;]*\);/mg
m - 多行匹配。
g - 全球
答案 1 :(得分:0)
/(^[^ ]+ = [^;]*\.\w\(yj\.class, [^;]*\);)/gm
答案 2 :(得分:0)
这个正则表达式只会在" ="
之前使用不包含数字的行[a-z]\s=[^;]*\.\w\(yj\.class, [^;]*\);