所以我有这个清单:
list1 = ['hi', 'there', '!', 'i', 'work', 'for', 'Spencer', '&', 'Co']
我想一起加入这个列表并将一些标点符号加入到单词中,但其他人不要加入:
我目前正在使用:
list1 = " ".join()
re.sub(r' (?=\W)', '', list1)
这使得每个标点符号都加入到前一个元素。
你好!我为Spencer&共
但是 我想要:
你好!我为Spencer&共
答案 0 :(得分:0)
我个人避免使用正则表达式,因为纯逻辑解决方案对我来说更容易理解。以下是您可以用于上述示例的简短解决方案:
list1 = ['hi', 'there', '!', 'i', 'work', 'for', 'Spencer', '&', 'Co']
output = ""
for part in list1:
output += " " + part + " "
output = [1:-1]
最后一行删除起始空格字符和结束空格字符。
答案 1 :(得分:0)
您可以使用带有前瞻的否定字符集并包含您的特殊字符:
>>> re.sub(r' (?=[^\w&])', '', list1) # include &
'hi there! i work for Spencer & Co'