[問題] 過濾函式呼叫格式

看板RegExp (正規表示式 Regular Expression)作者 (GN)時間7年前 (2017/04/24 10:48), 編輯推噓1(102)
留言3則, 1人參與, 最新討論串1/2 (看更多)
大家好, 我使用c#想從javascript程式碼中過濾出裡面有哪些"函式呼叫" 過濾格式是identifier(...) 我目前是用→ .*\w+\(.*\).* 但過濾出的結果會包含if()、for()、switch()... 請問正規式要如何避掉這些非函式呼叫的東西, 謝謝. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.27.46.123 ※ 文章網址: https://www.ptt.cc/bbs/RegExp/M.1493002092.A.CDE.html

04/24 20:19, , 1F
簡單的做法是 \b(?!if|for)\w+\(.*\)
04/24 20:19, 1F

04/24 20:19, , 2F
加入 negative lookahead 把關鍵字擋掉
04/24 20:19, 2F

04/24 20:20, , 3F
不過你這個方式遇上 a(b()) 就找不出來 b 了吧?
04/24 20:20, 3F
文章代碼(AID): #1O_MTipU (RegExp)
討論串 (同標題文章)
文章代碼(AID): #1O_MTipU (RegExp)