我想在一个项目中修改几千行,行总是这些格式之一,并且总是在一行的中间。
link() 最多接受 3 个参数,如下所示:
$this->url->link('this/path')
$this->url->link('this/path', '', true)
$this->url->link('this/path', 'something=' . $something, true)
$this->url->link('this/path', 'something=' . $something . '&other=' . $other, true)
我将以下正则表达式放在一起,它可以毫无问题地正确找到我想要的行,如上所示。
// regex
\$this->url->link.*(, true)
我希望能够从行中删除空参数,所以基本上这意味着:
如果参数二和三匹配'', true 删除它们,否则只删除参数三:, true
我试过这些:
\$this->url->link.*(.*)
\$this->url->link.*($1)
最佳答案
如果我理解了您的问题,我会使用 2 种不同的替换操作,一种用于删除 '',true
,另一种用于删除 ,true
。
删除 '', true
搜索:\$this->url->link\((.+), '', true\)
替换:\$this->url->link($1)
这应该取代
= $this->url->link('some/thing', '', true)
与
= $this->url->link('some/thing')
删除,true
搜索:\$this->url->link\((.+),(.+), true\)
替换:\$this->url->link($1,$2)
这应该取代
=> $this->url->link('some/thing', '可变数据或空', true)
与
=> $this->url->link('some/thing', '可变数据或空')
也适用于
$this->url->link('some/thingthing', '可变数据', true)
将其替换为
$this->url->link('some/thingthing', '可变数据')
关于java - 我在这个用于 netbeans 的 Java 正则表达式中缺少什么替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47334800/