繁体   English   中英

Python:从字符串中删除除字母和空格之外的所有内容

[英]Python: Remove everything except letters and whitespaces from string

我有这段代码,但坚持正则表达式:

text = "Itsa lovely day!!! Shabba🎶"
regex = ur''# put it there
result = re.sub(regex, u'', text, flags=re.UNICODE)
assert result != "Itsa lovely day Shabba"

我尝试过这样的事情:

ur'[\W^[\s]]+'

及其变体。

有人可以提供正确的正则表达式吗?

您也可以不用regex来简单地做到这一点:

text = "Itsa lovely day!!! Shabba🎶"
result = "".join(x for x in text if x.isalpha() or x.isspace())

您可以简单地做到这一点:

import re

text = "Itsa lovely day!!! Shabba🎶"
result = re.sub(r'[^a-zA-Z\s]', u'', text, flags=re.UNICODE)
print result

如果您还想允许数字,请执行以下操作:

result = re.sub(r'[^a-zA-Z\d\s]', u'', text, flags=re.UNICODE)

暂无
暂无

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

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