使用 Regex 删除单词中的空格,包括&符号
Remove spaces in words including ampersand with Regex
在 python3 中,使用 re.sub(pattern, replacement, string)
,我已经能够删除和号周围的空格。比如下面的语句应该修改成:
“A 和 D 替代解决方案”到“AD 替代解决方案”
“WESTMOUNT 管道和供暖”到“WESTMOUNT 管道供暖”
"全景 B 和 B" 至 "A PANORAMIC VIEW BB"
我已经能够修复前两个模式,但我遇到了第三个问题,我尝试了以下方法:
import re
#str="A & D ALTERNATIVE SOLUTIONS LTD."
#str="WESTMOUNT PLUMBING & HEATING LTD."
str= "A PANORAMIC VIEW B & B"
str = re.sub('(?<=\&)\s','',str)
str = re.sub('(?<=^[A-Z])\s','',str)
str = re.sub('[^\w\s]','',str)
print(str)
我怎样才能得到所有的图案?
您可以执行以下操作:
strlist = ["A & D ALTERNATIVE SOLUTIONS LTD.","WESTMOUNT PLUMBING & HEATING LTD.", "A PANORAMIC VIEW B & B"]
pattern = r'(\w{2}\s)?\s?& (\w{2})?'
[re.sub(pattern,r'',str_) for str_ in strlist]
Out[120]:
['AD ALTERNATIVE SOLUTIONS LTD.',
'WESTMOUNT PLUMBING HEATING LTD.',
'A PANORAMIC VIEW BB']
在 python3 中,使用 re.sub(pattern, replacement, string)
,我已经能够删除和号周围的空格。比如下面的语句应该修改成:
“A 和 D 替代解决方案”到“AD 替代解决方案”
“WESTMOUNT 管道和供暖”到“WESTMOUNT 管道供暖”
"全景 B 和 B" 至 "A PANORAMIC VIEW BB"
我已经能够修复前两个模式,但我遇到了第三个问题,我尝试了以下方法:
import re
#str="A & D ALTERNATIVE SOLUTIONS LTD."
#str="WESTMOUNT PLUMBING & HEATING LTD."
str= "A PANORAMIC VIEW B & B"
str = re.sub('(?<=\&)\s','',str)
str = re.sub('(?<=^[A-Z])\s','',str)
str = re.sub('[^\w\s]','',str)
print(str)
我怎样才能得到所有的图案?
您可以执行以下操作:
strlist = ["A & D ALTERNATIVE SOLUTIONS LTD.","WESTMOUNT PLUMBING & HEATING LTD.", "A PANORAMIC VIEW B & B"]
pattern = r'(\w{2}\s)?\s?& (\w{2})?'
[re.sub(pattern,r'',str_) for str_ in strlist]
Out[120]:
['AD ALTERNATIVE SOLUTIONS LTD.',
'WESTMOUNT PLUMBING HEATING LTD.',
'A PANORAMIC VIEW BB']