我有很多字符串如下所示:
Einwohnerzahl
244.951
StudierendeamHochschulort
[...]
单词现在用“\n”分隔。 我怎样才能把所有的单词和数字分开列在不同的单子里?因为我得到了很多不完全相同的字符串,所以我正在寻找一种解决方案,可以处理字符串中不同位置的单词/数字或缺少的单词/数字。你知道吗
最终解决方案:
第一步我用
cleaned_string = re.sub('['+string.punctuation+']', '', cleanstring).split()
生成以下输出:
print(cleaned_string)
['Einwohnerzahl', '244951', 'StudierendeamHochschulort', '57573', 'Studierendenanteil']
之后我用
_re_digits = re.compile(r"(-?(?:(?:\d+(?:\.\d*)?)|(?:\.\d+)))")
pure_zahlen = []
for element in cleaned_string:
pure_zahlen += [ float(n) for n in _re_digits.findall(element)]
以及
pure_text = [x for x in cleaned_string if not (x.isdigit() or x[0] == '-' and x[1:].isdigit())]
从列表字符串中分离文本和数字。你知道吗
这让我
print(pure_zahlen)
[41532.0, 2902.0, 70.0, 3739.0, 151319.0]
以及
print(pure_text)
['Einwohnerzahl', 'StudierendeamHochschulort', 'Studierendenanteil']
假设您有字符串
myString
,这里是实现目标的方法:使用此选项:
输出:
如果您想将其作为单独的单词/短语:
输出:
相关问题 更多 >
编程相关推荐