Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何匹配包含字符和数字但不包含数字的单词?_Python_Regex - Fatal编程技术网

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”-如果这是

我试图在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”-如果这是错误的,请写出整个课程:

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”都可以。这是可能的。你试过什么?你想出了什么办法,以什么方式不起作用?这是可能的。你试过什么?你想出了什么办法,在什么方面没有奏效?