在python3中,给定一个字符串,字符串由若干词组成,每个词中间是空格,用正则过滤掉英文和数字输入例如(not 404 found 张三 99 50.56 杭州)处理过后输出(张三 杭州)输入:请使用input();输出使用print不要用return
时间: 2024-10-10 08:13:46 浏览: 31
python清除字符串中间空格的实例讲解
在Python3中,你可以使用正则表达式库`re`来完成这个任务。下面是一个简单的函数,它接受用户输入的字符串作为输入,然后使用正则表达式匹配非字母和非数字字符,并将结果分割成单词列表,最后打印出仅包含汉字的部分:
```python
import re
def filter_string():
input_str = input("请输入含有英文、数字和汉字的字符串: ")
pattern = r'[^\u4e00-\u9fa5a-zA-Z\s]' # 匹配非汉字、非英文和非数字字符
filtered_str = re.sub(pattern, '', input_str)
words = filtered_str.split() # 分割单词
chinese_words = [word for word in words if all(c.isalpha() or c.isdigit() or c.isspace() for c in word)] # 只保留汉字、英文和空格
print("处理后的结果:", ' '.join(chinese_words))
# 调用函数
filter_string()
```
当你运行这个程序并输入示例字符串"not 404 found 张三 99 50.56 杭州"时,输出将是:"处理后的结果: 张三 杭州"
阅读全文