我正在尝试从字符串中删除除x之外的所有非数字字符。我有点困惑。
我当前的代码
number.replaceAll("[^\\d\\x]", "")
提前致谢。
答案 0 :(得分:20)
使用此:[^x0-9]
答案 1 :(得分:7)
你的正则表达式是
number.replaceAll("[^\\dxX]+", "");
无需转义字符类中的普通字符。一个改进也是在字符类之后有量词+
,这样那些字符的序列一次被替换而不是每个字符都被替换。
阅读 Xisb上的一些正则表达式基础知识:What absolutely every Programmer should know about regular expressions
答案 2 :(得分:0)
我想通了,也许有更好的方法来做到这一点。
number.replaceAll("[^\\d+xX]", "");
答案 3 :(得分:0)
你应该用这个:
number.replaceAll("[\\D&&[^x]]", "")