如何用示例“-”替换此字符串中没有“X”的每个字母:
"XASDXDAX".replace(/([AZ^X])/,"-") 应该返回:"X---X--X"
正则表达式中一定有问题或其他问题,我该如何解决?
如何用示例“-”替换此字符串中没有“X”的每个字母:
"XASDXDAX".replace(/([AZ^X])/,"-") 应该返回:"X---X--X"
正则表达式中一定有问题或其他问题,我该如何解决?
你已经接近了,你只需要添加g
修饰符(对于“全局”),并且你不能同时表达一个类和一个否定类(如果它是第一个字符,^
则唯一特殊[]
),所以只需列出范围。此外,您不需要捕获组(()
):
result = "XASDXDAX".replace(/[A-WY-Z]/g,"-");
"XASDXDAX".replace(/([A-WYZ])/g,"-")
这是您正在搜索的简单正则表达式。试试这个
var str="XASDXDAX".replace(/[^X]/g,"-");
您还可以使用带全局修饰符的否定类g
来替换每个非 X 字符:
"XASDXDAX".replace(/([^X])/g,"-")