我目前有这个正则表达式:this\.(.*)?\s[=,]\s,但是我遇到了一个我无法修复的泡菜。
我尝试了以下正则表达式,它有效,但它也捕获了我不想要的空间:this\.(.*)?(?<=\s)=|(?<!\s),. 我想要做的是匹配标识符名称。我想要的一个例子,结果是这样的:
this.""W = blah;这将匹配""W。上面的第二个正则表达式几乎完美地做到了这一点,但是它也捕获了=第一组中的空间。有人可以指出我正确的方向来解决这个问题吗?
编辑:不简单地[^\s]在通配符组中使用的原因是有时我可以得到这样的行:this. "$ = blah;
EDIT2:现在我有另一个问题。它与正确的行不匹配param1.readBytes(this.=!3,0,param1.readInt());。而不是匹配=!3它的匹配项=!3,0。有没有办法来解决这个问题?同样,我不能简单地使用 a[^,]因为可能有一个param1.readBytes(this.,3$,0,param1.readInt());应该匹配的名称,3$。