我有一个包含多个单词的长字符串。
这些词中的一些有例如撇号。别 。有些单词在单词之外有撇号,例如'''movieis great'''或''很多撇号'''''。
我想删除所有不属于该词的撇号。
例如在字符串中=不要试图''''删除''''字'里面的'。 输出应该是不要试图删除内部的字段。
fuction
答案 0 :(得分:1)
请注意,.replace()
仅替换文字字符串,并且不允许正则表达式作为搜索参数。
你可以使用一个正则表达式来匹配没有用单词边界括起来的撇号:
String s = "don't try to ''''remove apostr inside'''' word' 'żoł'";
s = s.replaceAll("(?U)\\B'\\b|\\b'\\B|\\B'\\B", "");
System.out.println(s);
此处,\b
是字边界,\B
是字边界以外的位置,(?U)
使\b
和\B
知道Unicode。