2024-10-02 00:38:02 发布
网友
我有一根像这样的绳子:
line = "aaa farmer's blooper's mouse'd would've bbb"
从我的字符串,行,如果一个单词以撇号或撇号+s('s)结尾,那么我想去掉撇号和s,但我想保持这个词不变,否则。在
所以,我希望我的线是
如何使用正则表达式实现这一点?在
使用regex lookahead来断言后面跟撇号或撇号+s('s)的内容只能是空白字符或字符串结尾,或者换句话说,是单词的结尾或字符串的结尾
import re line = "aaa farmer's blooper's mouse'd would've bbb" line_new = re.sub(r"'s?(?=(\s|$))", '', line) # "aaa farmer blooper mouse'd would've bbb"
正则表达式解释
regex的另一个替代方法是使用negative lookahead来断言后面的不是任何非空白字符 re.sub(r"'s?(?!\S)", '', line)
re.sub(r"'s?(?!\S)", '', line)
使用regex lookahead来断言后面跟撇号或撇号+s('s)的内容只能是空白字符或字符串结尾,或者换句话说,是单词的结尾或字符串的结尾
正则表达式解释
regex的另一个替代方法是使用negative lookahead来断言后面的不是任何非空白字符
re.sub(r"'s?(?!\S)", '', line)
相关问题 更多 >
编程相关推荐