繁体   English   中英

python正则表达式没有以某些字符结尾

[英]python regex not ending with some characters

嗨希望以下代码:

content ="'Yoda' :"
content = re.sub("\w\s*'\s*[^:]", "", content)
print content

打印出来: 'Yoda':但它打印出'Yod:我的意图是:如果字符串没有结束:然后用空字符串替换它,如果结束于:则不执行任何操作。 但上面的正则表达式仍然取而代之。 我该如何修改正则表达式呢。 提前致谢。

你需要在正则表达式末尾的锚$ ,指定字符串的结尾。

>>> content ="'Yoda' :"
>>> content = re.sub("\w\s*'\s*[^:]$", "", content)
>>> print (content)
'Yoda' :

但是你可以在没有正则表达式的情况下执行此任务,只需使用str.endswith()

content ="'Yoda' :"
if not content.endswith(':'):
    content=''
else:
    pass

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM