我試圖替換所有名稱爲「eventHandler」或以「... EventHandler」結尾的事件處理函數,以封裝在通用事件處理函數中,該函數在執行其他任務之前實際上調用事件處理程序。正則表達式排除字
總之,我使用中發現&正則表達式替換試圖做到這一點(在崇高的文本編輯器):
loginEventHandler(參數,回調)=>processEventHandler(loginEventHandler ,指定參數時,回調)
[查找]
(事件處理程序?|!(processEventHand LER)\ W +事件處理程序)((。*))
如預期這不是工作[替換]
processEventHandler($ 1,$ 2)。該查找也匹配rocessEventHandler。如果函數名稱是「processEventHandler」,如何忽略匹配函數?
我試過以下問題中提到的解決方案,但沒有幫助。
Regular expression to match line that doesn't contain a word?
A regular expression to exclude a word/string
下面是測試結果:
您使用正則表達式測試儀不支持加速的正則表達式語法。將regex101與PCRE一起用作正則表達式。另外,請在問題本身中發佈示例文本。 –
下面是示例文本: loginEventHandler(ERR,結果) processEventHandler(loginEventHandler,ERR,結果) 事件處理程序(ERR,結果) appInitEventHandler(ERR,結果) initProcessEventHandler(ERR ,結果) initprocessEventHandler(ERR,結果) 通用(E,R) – sunilkumarba
嘗試['(我)(\ b(?!進程)\ W *事件處理程序)\(( [^)] *)\)'](https://regex101.com/r/dD9wI1/1) –