dongyuying1507 2017-05-05 14:36
浏览 176
已采纳

如何在Notepad ++正则表达式查找器对话框中替换文本周围的文本?

This question is the opposite from other regex notepad++ questions. Instead of changing text between text, I need to replace text that is surrounding, like that:

from

$_REQUEST['action']

to

getReq('action')

So:

I wish to replace $_REQUEST( for getReq( and at same time replace ] for ).

How can I achieve that in Notepad++ ? There are more than a 1000 hits and I want to replace it all, not just the ones with action index, but many more!

  • 写回答

2条回答 默认 最新

  • donglun2010 2017-05-05 14:40
    关注

    You still want to match, you just want match with capture (Notepad supports this, make sure Regex is checked in search and replace. The ( ) is the capture group, the order of the first ( is the capture group number. (?: ) can be used to make a group non-capture)

    Match on \$_REQUEST\['([^']*)'\]

    Replace using capture with getReq\('$1'\)

    EDIT: In Notepad, you have to escape () for some reason in the replace part

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?