我想在String中修复格式错误的椭圆(…).
"Hello.. World.." "Hello... World..." // this is correct "Hello.... World...." "Hello..... World....."
应该都纠正为:
"Hello... World..."
以下正则表达式处理3个或更多连续的任何实例.
line.replaceAll("\\.{3,}","...");
但是,当连续2个连续.时,我不知道如何处理这种情况.我们做不到这样的事情:
line.replaceAll("\\.{2}","...");
例如,对于“…”,上面的代码将返回“……”,因为正则表达式将替换前两个.(索引0和1),然后是下一个2..(索引1和2),导致“……”“……”=“……”.
像这样的东西有效:
line.replaceAll("\\.{2}","...").replaceAll("\\.{3,"...");
……但必须有更好的方法!
解决方法
您可以替换两个或更多个组中的任何一组.:
[.]{2,}
与……