替换字符串中的多个元素

2024-04-19 08:34:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习中级python。你知道吗

假设有一根绳子

astring = '[Embodied cognition - Wikipedia](https://en.wikipedia.org/wiki/Embodied_cognition)'

使用string.punctuation提取单词

from string import punctuation
for delimiter in punctuation:
    if delimiter in astring:
        astring = astring.replace(delimiter, ' ')

In [7]: astring
Out[7]: ' Embodied cognition   Wikipedia  https   en wikipedia org wiki Embodied cognition '

我用map试过了,效果不错

In [12]: a = map(astring.replace, punctuation, ' ')
In [14]: list(a)
Out[14]: [' Embodied cognition   Wikipedia  https   en wikipedia org wiki Embodied cognition ']

如何用其他先进技术解决这个问题?你知道吗


Tags: inhttpsorgstringwikiwikipediareplaceen
1条回答
网友
1楼 · 发布于 2024-04-19 08:34:42

您应该研究正则表达式(regex简称)。你知道吗

import re

astring = '[Embodied cognition - Wikipedia](https://en.wikipedia.org/wiki/Embodied_cognition)'
re.sub(r'[^A-Za-z0-9]+', ' ', astring)
# returns:
' Embodied cognition Wikipedia https en wikipedia org wiki Embodied cognition '

相关问题 更多 >