Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java从字符串中删除除x以外的非数字字符_Java_Regex - Fatal编程技术网

Java从字符串中删除除x以外的非数字字符

Java从字符串中删除除x以外的非数字字符,java,regex,Java,Regex,我正在尝试从字符串中删除除x以外的所有非数字字符。我有点困惑 我当前的代码 number.replaceAll("[^\\d\\x]", "") 提前谢谢 使用这个:[^x0-9] 你可以在上查看,我想出来了,也许有更好的方法 number.replaceAll("[^\\d+xX]", ""); 您应该使用以下选项: number.replaceAll("[\\D&&[^x]]", "") 你的正则表达式是 number.replaceAll("[^\\dxX]+", "

我正在尝试从字符串中删除除x以外的所有非数字字符。我有点困惑

我当前的代码

number.replaceAll("[^\\d\\x]", "")

提前谢谢

使用这个:
[^x0-9]


你可以在

上查看,我想出来了,也许有更好的方法

number.replaceAll("[^\\d+xX]", "");
您应该使用以下选项:

number.replaceAll("[\\D&&[^x]]", "")
你的正则表达式是

number.replaceAll("[^\\dxX]+", "");
无需转义字符类中的普通字符。还有一个改进是在字符类后面加上量词
+
,这样可以立即替换这些字符的序列,而不是单独替换每个字符


阅读一些关于Xisb的正则表达式基础知识:

我忘了指定大写字母x,这样可以吗[^xX0-9]?谢谢努兰。@George-为什么要用加号?这不会导致多余的被跳过吗?你的正则表达式的所有错误就是你不必要地逃避了x。