我试图创建一个正则表达式,它可以删除任何以连字符开头或结尾的单词(不是同时都包含连字符)。
我的尝试如下所示:
word1-
-> 删除
-word2
-> 删除
sub-word
-> 保留我的尝试如下所示:
def begin_end_hyphen_removal(line):
return re.sub(r"((\s+|^)(-[A-Za-z]+)(\s+|$))|((\s+|^)([A-Za-z]+-)(\s+|$))","",line)
然而,当我尝试在以下行上应用它时:
here are some word sub-words -word1 word2- sub-word2 word3- -word4
-word5 example
word6-
word7-
another one -word8
-word9
我再次获得与输入相同的输出。
-sub1-sub2
是什么意思? - dawg