我正在使用netbeans,我想使用替换功能将$ this-> escape(stuff)包含在更多文件中的特定内容中,但是有很多条件,例如:
匹配
$this->$variable, $variable
$this->$array['something'], $this->$array[0], $array['something'], $array[0]
不匹配:
$this->partial, $this->escape, $this->form
到目前为止,我的工作正常
替换此
echo\s+(\$this->[->a-zA-Z_']+[^\s;(])
用这个
echo \$this->escape\($1\)
它不适用于数组,不排除任何内容,也不匹配$ variable
任何人都可以帮忙,改善表达方式,这样可以减少手工操作这么多字符串的折磨吗?任何帮助表示赞赏。
编辑:只需将排除项添加到我的工作示例就足够了。
答案 0 :(得分:1)
目前还不完全清楚你想要匹配的部分。如果我理解正确,那么这应该有效:
(?:\$this->)?\$[^,\s-]*(?=[,\s])
如果您打算与其他内容匹配,请告诉我。