如何删除数字值但保留字母数字值

时间:2019-09-16 06:01:26

标签: python

words = ["my name is john123. I am 23 years old."]

预期输出-: my name is john123. I am years old.

如何获得此输出?

2 个答案:

答案 0 :(得分:4)

您可以使用正则表达式。

import re

st = ''.join(words)
reg = re.compile(r'\b\d+\b\s*')
res = reg.sub('', st)

此处\b用于单词边界,\d+匹配一个或多个数字,结尾\s*匹配数字单词末尾的零个或多个空格。您可以根据需要删除\s*

更多信息Python regular expression

答案 1 :(得分:1)

words = ["my name is john123. I am 23 years old."]
words = [x for x in words[0].split() if not x.isdigit()]
print(words)

尝试一下。