我需要从语句中删除尾随小数/点。以下是声明
ABC paid 10.25 RS confirmed. from bank XYZ 20125722. on 23-12-2012
我想从语句中删除尾随小数/点。删除小数/点后,它应该像
ABC paid 10.25 RS confirmed from bank XYZ 20125722 on 23-12-2012
请注意,我不需要删除 中的小数点10.25
,但在其他地方。我怎么能用Java做到这一点?
在 Java 中,只需对字符串使用replaceAll(String pattern,String replacement)方法,如下所示:
String result = "ABC paid 10.25 RS confirmed. from bank XYZ 20125722. on 23-12-2012".replaceAll("\\.\\s+"," ") ;
您可以使用的正则表达式是/\.\S+/
Perl 或 Perl-regex 支持语言。否则/\.[ ^I]/
,“^I”是 TAB 字符。将其替换为空。
希望有帮助。
您应该使用 is \\.\\s+,因为点后可能包含多个空格或一个空格。
代码如下:
String result = "ABC paid 10.25 RS confirmed. from bank XYZ 20125722. on 23-12-2012"
.replaceAll("\\.\\s+", " ");
你的正则表达式是
\.(?=\s|$)
表示当一个点后跟一个空格或字符串的结尾时匹配一个点。(?=\s|$)
是一个正向前瞻,确保后面有空格或字符串结尾,但与此不匹配,因此无需再次插入,只需替换为空字符串即可。
对于你的 java
String res = "ABC paid 10.25 RS confirmed. from bank XYZ 20125722. on 23-12-2012".replaceAll("\\.(?=\\s|$)", "");