React中如何创建正则表达式批量删除字符串中的多个子串?
合并两次正则替换为单次操作
你原来的代码里,两次replace其实是想移除字符串中的A,和S,子串,但原来的正则表达式写法有问题——/[(A,)]/g会匹配并删除单独的(、A、,、)字符,而不是完整的A,子串。
要一次性完成这个替换,你可以用字符类把A和S放在一起,然后紧跟逗号,这样单个正则就能匹配两种目标子串了:
if (charCode === characteristicsCode.SERIAL_NUMBER) { charValue = charValue.replace(/[AS],/g, ''); }
简单解释下这个正则:
[AS]:字符类语法,匹配A或者S中的任意一个字符,:精准匹配紧跟在A/S后面的逗号g:全局匹配标志,确保替换掉字符串里所有符合条件的子串,而不只是第一个
这样就不用分两次调用replace啦,一次操作就能搞定所有需要移除的A,和S,。
内容的提问来源于stack exchange,提问作者Abhishek
相关产品推荐
相关产品推荐

