正则表达式去除所有数字和特殊字符但保留空格和字母

4

请问有人可以帮我写一个正则表达式来删除这样的字符串->

      '226710': 'Kevin Werbach'

获取只需要--> Kevin Werbach

我的尝试-->

   instructors = re.sub(r'([^a-zA-Z\s]+?)', '', instructors)

该代码返回 -->

  KevinWerbach  

没有任何空格。


1
你目前尝试了什么?另外,更多关于你的输入的上下文会有所帮助。例如,你是想仅在撇号内有数字时删除行的第一部分,还是如果有字母也要这样做?你不想修改的行有哪些例子? - CAustin
我的尝试 -> re.sub(r'([a-zA-Z ]+?)' 这段代码没有返回空格,导致结果为KevinWerbach。 - Gayatri
是的,它也删除了空格,我正在Python中使用它。 - Gayatri
这是一个非标准的空格 @chris85 - Gayatri
1
re.sub() 需要 3 个参数。re.sub(r'([a-zA-Z ]+?)' 应该是什么意思?你用什么替换它了? - Barmar
显示剩余4条评论
1个回答

7

这个有效:

import re
text = "'226710': 'Kevin Werbach'"
print(re.sub (r'([^a-zA-Z ]+?)', '', text))

您也可以将空格改为\s:
print(re.sub (r'([^a-zA-Z\s]+?)', '', text))

谢谢!你能将这个选为答案吗? - user5684647

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接