我正在阅读一个文本文件,并使用它创建一个Excel文件。我设法进行了转换。但是有一个描述包含一个或两个我想删除的句号(。)。有时可能有一个句号,可能有两个或没有句号。我尝试使用replace,但它也删除了文本内部/中间的(。)。我不想那样做。
这些是一些示例
P/NO 9281195 . .
TFR TO 202 . .
E/C 21118 GTLA/0267/0044505 NI
9259589 .PMGN JAYARATHNE .
GTLA/0267/0044505 662881724V .
我想要的是
P/NO 9281195
TFR TO 202
E/C 21118 GTLA/0267/0044505 NI
9259589 .PMGN JAYARATHNE
GTLA/0267/0044505 662881724V
答案 0 :(得分:4)
解决方案:
您可以使用正则表达式最后匹配一些(space point)
,然后将其替换为空
String line = "P/NO 9281195 . .";
line = line.replaceAll("(\\s*\\.)+$", "");
详细信息:
\s*
表示0到无限的空间\.
得到一个点(\\s*\\.)+
可获得1到无限的空间/点对$
末尾比赛答案 1 :(得分:3)
尝试
str.replaceAll("(\\.|\\s)+$", "")
此正则表达式将匹配任何.
字符或该行末尾的任何空格。因此,您只需要将其替换为空字符串即可。