我需要删除一个单词后的标点符号.例如,word?!
应该更改为word
,string:
应该更改为string
.
编辑:算法应该只删除字符串末尾的标点符号.字符串中的任何标点都应该保留.例如,doesn't;
应该成为doesn't
.
使用replaceAll(...)
接受正则表达式的方法.
String s = "don't. do' that! ";
s = s.replaceAll("(\\w+)\\p{Punct}(\\s|$)", "$1$2");
System.out.println(s);
Run Code Online (Sandbox Code Playgroud)
您可以使用正则表达式来修改字符串。
String resultString = subjectString.replaceAll("([a-z]+)[?:!.,;]*", "$1");
Run Code Online (Sandbox Code Playgroud)
我不知道'
最后的“单词”在哪里,它被用作标点符号。所以这个正则表达式将适合你。