我有一个用户可以随时编辑的字符串,以及一个正在对该字符串执行的正则表达式,以将其添加到 xml 中,然后将其保存,但他们可以将“$1”添加到字符串中。我只想保存文本'$1',但我必须对 $1 所在的同一字符串执行正则表达式。它每次都用正则表达式中的字符替换 $1。
如何找到并替换此字符串中的 $1?
正在发生的事情的例子:
string1 = '<item id="1">i have $100</item>'
regexp = new RegExp('<item id="1"([^<]|<[^\/]|<\/[^i]|<\/i[^t]|<\/it[^e]|<\/ite[^m]|<\/item[^>])*<\/item>');
data = '<data><item id="1">i have no money</item><item id="2">i have no money</item></data>'
data = data.replace(regexp, string1);
结果
<data><item id="1">i have >00</item><item id="2">i have no money</item></data>