我对正则表达式非常不自信,我需要做这个简单的工作: 我有一个像这样的输入字符串:
<a id="randomid">some text ( +1 even more text)</a>
现在我需要替换“1”,我知道它总是在( +
和空格之间,我怎么能用正则表达式来做?
该字符串由ASP.NET在asp:HyperLink
组件中生成,我的第一次尝试是在<span>
内生成具有已知ID的数字,但看起来像 asp.net 删除 ASP 组件
答案 0 :(得分:1)
如果你的假设是正确的,这也适用于你,它将取代第一次出现“(+ number”with“(+ replaceNumber”。
var regex = /\(\s+\+[0-9]+/
var replaceNumber = 2;
$('a#randomid').text().replace(regex, "( +"+replaceNumber);
要替换所有出现,请将正则表达式更改为
var regex = /\(\s+\+[0-9]+/g
答案 1 :(得分:0)
假设你正在使用jQuery ......
$('a#randomid').text().replace(/(.+ \( \+)([0-9]+)(.+)/, "$12$3")
会给你......
some text ( +2 even more text)