0

我试图让所有在开头、中间和/或结尾处至少有 1 个标点符号(或任何非空格、非字母数字字符)的单词。例如,在这句话中

this is a wo!rd right !and| other| hello |other

正则表达式将返回

wo!rd !and| other| |other
4

1 回答 1

8

你可以使用这个:

>>> sentence = "this is a wo!rd right !and| other| hello |other"

>>> import re

>>> re.findall("\S*[^\w\s]\S*", sentence)
['wo!rd', '!and|', 'other|', '|other']

这将找到所有这些单词,至少包含1 non-word, non-space字符。\S与 相同[^\s]

正则表达式解释:

\S*      # Match 0 or more non-space character
[^\w\s]  # Match 1 non-space non-word character
\S*      # Match 0 or more non-space character
于 2013-02-14T12:44:18.753 回答