3 回答

TA貢獻(xiàn)2011條經(jīng)驗(yàn) 獲得超2個(gè)贊
表達(dá)式部分是一個(gè)前瞻,一個(gè)零寬度的(?=\=)
斷言,它不消耗文本,但要求它出現(xiàn)在右邊。當(dāng)你說(?=\=)(\w+)
你想要\w+
模式開始匹配時(shí)=
。由于\w
不匹配=
,您的正則表達(dá)式總是失敗。
利用
/(\w+)=(\w+);/g
JavaScript(借自How do you access the matching groups in a JavaScript regular expression?):
var myString = "let key1=value1; let key2=value2;";
var myRegexp = /(\w+)=(\w+);/g;
match = myRegexp.exec(myString);
while (match != null) {
console.log(match[1] + "," + match[2]);
match = myRegexp.exec(myString);
}

TA貢獻(xiàn)1803條經(jīng)驗(yàn) 獲得超6個(gè)贊
以下正則表達(dá)式應(yīng)該可以解決問題:(let (\w+) ?= ?(\w+);?)+
. 每個(gè)let
語句都將是一個(gè)匹配項(xiàng),其中鍵是組 2,值是組 3。
添加回答
舉報(bào)