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