答案 0 :(得分:0)
这是一种无需正则表达式的方法,如前所述,使用del
:
def remove_after_sym(s, sym):
# Find first word
first = s.strip().split(' ')[0]
# Split the string using the symbol
l = []
s = s.strip().split(sym)
# Split words by space in each sentence
for a in s:
x = a.strip().split(' ')
del x[0]
l.append(x)
# Join words in each sentence
for i in range(len(l)):
l[i] = ' '.join(l[i])
# Combine sentences
final = first + ' ' + ' '.join(l)
final = final.strip() + '.'
return final
在这里,sym是str
(单个字符)。
我还非常自由地使用了“句子”一词,如您的示例中,sym
是一个点。但是这里的句子实际上是指部分字符串被所需的符号破坏。
这是它的输出。
In [1]: remove_after_sym(string, '.')
Out[1]: 'I have an apple want to eat it it is so sore.'