Python 如何匹配包含字符和数字但不包含数字的单词?
我试图在Python中创建一个正则表达式,它匹配包含Python 如何匹配包含字符和数字但不包含数字的单词?,python,regex,Python,Regex,我试图在Python中创建一个正则表达式,它匹配包含a-Za-z或a-Za-z0-9的单词,而不仅仅是0-9 例如,我想匹配fooT,foo23,fo24ooo,fo4o444,但不匹配40 可能吗 一种方法是: r'\w*[A-Za-z]\w*' \w匹配\u以及“A-Za-z0-9”-如果这是错误的,请写出整个课程: r'[A-Za-z0-9]*[A-Za-z][A-Za-z0-9]*' 一种方法是: r'\w*[A-Za-z]\w*' \w匹配\u以及“A-Za-z0-9”-如果这是
a-Za-z
或a-Za-z0-9
的单词,而不仅仅是0-9
例如,我想匹配fooT
,foo23
,fo24ooo
,fo4o444
,但不匹配40
可能吗 一种方法是:
r'\w*[A-Za-z]\w*'
\w
匹配\u
以及“A-Za-z0-9”-如果这是错误的,请写出整个课程:
r'[A-Za-z0-9]*[A-Za-z][A-Za-z0-9]*'
一种方法是:
r'\w*[A-Za-z]\w*'
\w
匹配\u
以及“A-Za-z0-9”-如果这是错误的,请写出整个课程:
r'[A-Za-z0-9]*[A-Za-z][A-Za-z0-9]*'
如果设置了区域设置或UNICODE标志,则
\w
也可能会匹配其他字符,这可能不是所需的行为。为True,但UNICODE
和LOCALE
无效,除非在创建regexp时主动指定。我将添加:^[A-Za-z0-9]*[A-Za-z][A-Za-z0-9]*$
但在其他方面,我只使用了整个类,效果很好!“它是如何工作的”仍然让我困惑。非常感谢Peter。对于它的工作原理,*
匹配类中任意数量的字符,包括0。所以在英语中,这将是“任意数量的字母或数字,甚至零。然后正好是一个字母。然后任意数量的字母或数字,甚至零”。它至少需要一个非数字字符,但该非数字可以在字符串中的任何位置—“f00”、“0f0”和“00f”都可以使用。\w
如果设置了区域设置或UNICODE标志,也可能匹配其他字符,这可能不是所需的行为。True,但是,除非在创建regexp时主动指定,UNICODE
和LOCALE
无效。我要添加:^[A-Za-z0-9]*[A-Za-z][A-Za-z0-9]*$
,但在其他方面,我只使用了整个类,它工作得很好!“它是如何工作的”仍然让我困惑。非常感谢Peter。对于它的工作原理,*
匹配类中任意数量的字符,包括0。所以在英语中,这将是“任意数量的字母或数字,甚至零。然后正好是一个字母。然后任意数量的字母或数字,甚至零”。它至少需要一个非数字字符,但该非数字可以在字符串中的任何位置—“f00”、“0f0”和“00f”都可以。这是可能的。你试过什么?你想出了什么办法,以什么方式不起作用?这是可能的。你试过什么?你想出了什么办法,在什么方面没有奏效?