【发布时间】:2021-07-02 12:18:10
【问题描述】:
我是 Javascript 的初学者,我有以下问题:
我必须用字符串中的相同替换替换模式#XY1、#XY2、#XY3 或#XY4。
例如。替换为 AA:
这是 #XY1 和 #XY3 示例 #XY1 --> 这是 AA 和 AA 示例 AA
模式是随机出现的,字符串中可能有多个(不同的)一次。如何在不频繁迭代字符串的情况下替换它们?所以我不寻找这样的建议:
str = str.replace(/:#XY1:/g, "Replacement")
str = str.replace(/:#XY2:/g, "Replacement")
str = str.replace(/:#XY3:/g, "Replacement")
str = str.replace(/:#XY4:/g, "Replacement")
或带有循环的东西。
我希望找到一个解决方案,我只需遍历字符串一次并替换所有模式#XY 加上下一个变量字符。
由于某些版本问题,我无法使用 .replaceAll。
感谢您的帮助,祝您有美好的一天!干杯,乔什
【问题讨论】:
-
到目前为止您尝试过什么?你被困在哪里了?这是否总是四个字符串(以
XY开头),后跟数字一到四? -
将所有正则表达式组合成一个表达式,例如
str = str.replace(/:#XY[1-4]:/g, "Replacement") -
要替换的模式始终以#XY 开头,后跟一个数字(1、2、3 或 4)
标签: javascript regex