我正在尝试使用RegEx来选择两个美元符号之间的所有字符串。
text = text.replace(/\$.*\$/g, "meow");
我正试图将两个美元符号之间的所有文字变成“喵”(占位符)。
修改 原始问题已更改,因为解决方案过于本地化,但接受的答案是有用的信息。
答案 0 :(得分:4)
这非常接近你想要的,但如果你的字符串中有多对$text$
,它将会失败。如果你使.*
转发器变得懒惰,它将解决这个问题。如,
text = text.replace(/\$.*?\$/g, "meow");
答案 1 :(得分:3)
我看到一个问题:如果你有多个“模板”,如
aasdasdsadsdsa $ a $ dasdasdsd $ b $ asdasdasdsa
你的正则表达式会将'$ a $ dasdasdsd $ b $'视为两个dolar信号之间的文本。您可以使用不太具体的正则表达式,如
/ \ $ [^ $] * \ $ /克
在此示例中考虑两个字符串