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

看板RegExp (正規表示式 Regular Expression)作者 (GN)時間7年前 (2017/04/29 16:30), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串2/2 (看更多)
我目前是用 (?!\b(if|while|for|switch|function)\b)\b\w+(?=\s*\()\([^\)]*\) 可以避掉if for switch 的pattern 剩下避掉函式定義的pattern 因為function tempA(){}也符合identifier()的格式 ※ 引述《a2975313 (GN)》之銘言: : 標題: [問題] 過濾函式呼叫格式 : 時間: Mon Apr 24 10:48:10 2017 : : : 大家好, 我使用c#想從javascript程式碼中過濾出裡面有哪些"函式呼叫" : : 過濾格式是identifier(...) : : 我目前是用→ .*\w+\(.*\).* : : 但過濾出的結果會包含if()、for()、switch()... : : 請問正規式要如何避掉這些非函式呼叫的東西, 謝謝. : : -- : ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.27.46.123 : ※ 文章網址: https://www.ptt.cc/bbs/RegExp/M.1493002092.A.CDE.html : 推 mars90226: 簡單的做法是 \b(?!if|for)\w+\(.*\) 04/24 20:19 : → mars90226: 加入 negative lookahead 把關鍵字擋掉 04/24 20:19 : → mars90226: 不過你這個方式遇上 a(b()) 就找不出來 b 了吧? 04/24 20:20 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 218.164.23.192 ※ 文章網址: https://www.ptt.cc/bbs/RegExp/M.1493454623.A.188.html

05/02 20:17, , 1F
請問使用lookahead如何加入whitespace的判斷
05/02 20:17, 1F
文章代碼(AID): #1P14yV68 (RegExp)
討論串 (同標題文章)
文章代碼(AID): #1P14yV68 (RegExp)