在Python中组合正则表达式

-1 投票
6 回答
529 浏览
提问于 2025-04-17 22:22

我想在Python中把正则表达式\w+[a-z]结合起来,只接受全是小写字母的单词,但我不知道该怎么做。有没有人知道怎么实现?

6 个回答

0

因为 \w+ 和下面这个是一样的:

[A-Za-z0-9_]+

我觉得你想要的是这个:

[a-z_]+

或者也可能是这个:

[a-z0-9_]+
0

要找到所有小写字母组成的单词,你可以使用下面这个正则表达式的例子:

re.findall('\b[a-z]+\b', my_string)

你不需要担心把 \w 组合起来去寻找所有的小写单词。这个正则表达式会直接找到只包含小写字母的字符串。

0

如果你已经有一个单词字符串,并想检查它是否都是小写字母,那么你可以使用 str.islower() 这个函数。如果你有一个由空格分开的多个单词的字符串,你可以使用

  lst = words.split(' ')
  for word in lst:
    print word, 'lower case test is', word.islower()

注意,我没有使用列表推导式来拆分这些单独的部分。

2

试试下面这个正则表达式

\b[a-z]+\b

在这里输入图片描述

在线 演示

1

如果你只想要小写字母的单词,使用 [a-z]+ 就可以了。

\w 包含大写字母、数字和下划线。

撰写回答