爲什麼不能正常工作?JavaScript,RegEx - 如何獲取實際找到的字符串
var str = "nd2(31)jnd";
str = str.replace(/[0-9](/,/[0-9]*(/);
我想在前面的前一個paranthese更換每一個號碼: 「2(」 與 「2 *(」
爲什麼不能正常工作?JavaScript,RegEx - 如何獲取實際找到的字符串
var str = "nd2(31)jnd";
str = str.replace(/[0-9](/,/[0-9]*(/);
我想在前面的前一個paranthese更換每一個號碼: 「2(」 與 「2 *(」
你的正則表達式是錯誤的,這樣做你想要什麼:
str.replace(/([0-9]+)\(/g, "$1*(");
$1
引用在括號()
的第一場比賽,你必須逃脫\(
與之相匹配的。
更新:添加g
全球匹配
2(3(4+5)) => 2*(3*(4+5))
更新:製作它的括號的另一端工作太,合:
str.replace(/(\d+)\(/g, "$1*(").replace(/\)(\d+)/g, ")*$1");
什麼不起作用? – Piyuesh 2013-03-16 09:35:00
現在我編輯它 – 2013-03-16 09:36:02
,它不工作,以取代前:「2(」與「2 *(」 – 2013-03-16 09:36:34