我在替换功能上停留了一段时间。基本上它可以工作,但它不适用于括号 ()
。
我为此准备了一个 fiddle :
标记:
<span>Textarea / Longtest</span><br>
<input id="textarea_1" type="text" size="30" maxlength="30" value="12()1212">
<br><br><br>
<span>String to replace</span><br>
<input id="textarea_2" type="text" size="30" maxlength="30"><br>
<span>Replacing String</span><br>
<input id="textarea_3" type="text" size="30" maxlength="30">
<input type="button" value="execute" onclick="replace()">
Javascript:
function replace(){
var longtext = document.getElementById('textarea_1').value
var StringToReplace = document.getElementById('textarea_2').value
var UserReplacingString = document.getElementById('textarea_3').value;
var oldWordRegEx = new RegExp(StringToReplace,'g');
var result = longtext.replace(oldWordRegEx,UserReplacingString);
alert(result);
}
因此,在第二个框中输入 1
,并在第三个框中输入随机值。我的 JavaScript 代码会自动替换第一个框中的所有 1
,但不会替换 (
或 )
。
有人可以帮我解决这个问题吗?
我必须使用纯 JavaScript (OnClick
),而不是 jQuery 或类似的。
最佳答案
(
和 )
是正则表达式的特殊字符。你需要逃离他们。您使用 \(\)
的代码可以正常工作。
关于javascript - 替换功能不适用于括号 (),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22770308/