如何让正则表达式删除非数字字符但保留换行符?
解决正则替换保留换行符的问题
把第三个正则表达式修改为 RegExp('[^\\n\\d]') 即可,替换后的完整代码如下:
data = data.replaceAll(RegExp('[^A-Za-z0-9]'), ''); data = data.replaceAll(RegExp('id'), '\n'); data = data.replaceAll(RegExp('[^\\n\\d]'), '');
原理说明
正则里的 [^...] 是反向匹配字符集,意思是「匹配不在这个集合里的所有字符」:
\n代表换行符,\d代表数字[^\n\d]会匹配所有既不是数字也不是换行符的字符,将这些字符替换为空,就能保留换行符的同时删掉其他非数字内容。
执行修改后的代码后,最终输出会是:
1 2
内容的提问来源于stack exchange,提问作者Jay
相关产品推荐
相关产品推荐

