0
我的正則表達式有以下問題。正則表達式需要包含加號
我想搜索兩個字符串之間的字符串。
的datas
就是這樣:
var datas = "a='00-8'b='13-'a+='00-2'b+='3333'c='4'";
我嘗試:
datas.match("a\+='(.*?)'");
我不能讓正則表達式由於+
標誌工作。
任何幫助嗎?
我的正則表達式有以下問題。正則表達式需要包含加號
我想搜索兩個字符串之間的字符串。
的datas
就是這樣:
var datas = "a='00-8'b='13-'a+='00-2'b+='3333'c='4'";
我嘗試:
datas.match("a\+='(.*?)'");
我不能讓正則表達式由於+
標誌工作。
任何幫助嗎?
你傳遞一個字符串到match
,而不是一個正則表達式,也許你想
datas.match(/a\+='(.*?)'/);
或者,你需要逃避你反斜線爲字符串因此它可以跳過+
作爲正則表達式,即
datas.match("a\\+='(.*?)'");
用正斜槓將正則表達式括起來。
datas.match(/a\+='(.*?)'/g);
OR
轉義反斜線一個更多的時間,如果是雙引號括起來。
> datas.match("a\\+='(.*?)'");
[ 'a+=\'00-2\'',
'00-2',
index: 15,
input: 'a=\'00-8\'b=\'13-\'a+=\'00-2\'b+=\'3333\'c=\'4\'' ]
> datas.match("a\\+='(.*?)'")[1];
'00-2'