0

我对正则表达式很不自信,我需要做这个简单的工作:我有一个这样的输入字符串:

<a id="randomid">some text ( +1 even more text)</a>

现在我需要替换那个“1”,我知道它总是在( +一个空格之间,我怎么能用正则表达式来做到这一点?

该字符串是由asp:HyperLink组件内的 ASP.NET 生成的,我的第一次尝试是在一个知道 id 的内部生成该数字<span>,但看起来像asp.net删除我在ASP组件内的所有 html 标记

4

2 回答 2

1

如果您的假设是正确的,这也适用于您,它将第一次出现的“(+number”替换为“(+replaceNumber”。

var regex = /\(\s+\+[0-9]+/
var replaceNumber = 2;
$('a#randomid').text().replace(regex, "( +"+replaceNumber);

要替换所有出现的情况,请将正则表达式更改为

var regex = /\(\s+\+[0-9]+/g
于 2013-05-15T08:37:20.677 回答
0

假设您正在使用 jQuery ...

$('a#randomid').text().replace(/(.+ \( \+)([0-9]+)(.+)/, "$12$3")

会给你...

some text ( +2 even more text)
于 2013-05-15T08:25:02.823 回答