我试图用空白替换所有没有字母包围的撇号。对于像it's
这样的情况,撇号不会被替换。
我试过这个:
str.replaceAll("[^a-zA-Z](')", " ")
.replaceAll("(')[^a-zA-Z]", " ");
然而,仍有一些案例无法奏效,我也相信应该有更优雅的方式来做到这一点。有人可以帮助我吗?
答案 0 :(得分:1)
正则表达式:^'+|'+(?!\S)
(flags:g,m)
在输入的开头匹配撇号。匹配所有撇号,后面没有非空白字符。如果可能,+
允许重复上一个标记('
)。
如果你有撇号的例子被这个替换但不应该,请将它们留在评论中,我会看看我是否可以修改。