有没有办法使用\ p {Punct} \ p {Lower} \ p {Upper}和正则表达式(java),但没有“。”字符?

时间:2015-11-08 05:07:35

标签: java regex

我需要取出不是数字的字符串的所有字符。

2 个答案:

答案 0 :(得分:1)

您可以使用Character Class Intersection之类[\p{Punct}\p{Lower}\p{Upper}&&[^.]]

但为什么不使用

[^\d.]+

作为Java字符串"[^\\d.]+"

这将匹配一个或多个不是\d数字或.期间的字符。

答案 1 :(得分:0)

我建议使用\\d+然后(它的连续数字)和捕获组。像

这样的东西
String str = "";
str = str.replaceAll("(\\d+\\.\\d+)", "$1");