我正在尝试使用正则表达式搜索字符串模式
但是由于我对正则表达式很陌生,所以我想就搜索模式提出一些建议
所以,我想找到一条具有“值”的行,因为下面的值可以是数字和字母
Name (value)
我尝试使用模式
re.search(r"Name \([a-zA-Z0-9]\)", line)
但它似乎没有像我预期的那样找到。
我应该如何编写搜索模式?谢谢!
您的表达很好,但您的字符组缺少量词:
re.search(r"Name \([a-zA-Z0-9]+\)", line)
意思是“+至少其中一个”。如果您不输入量词,则意味着仅可能出现上述字符之一。可能的量词是:
+对于一个或多个,?至多一个和*对于任何数量的那些{x,y}也可以,至少表示x,但最多y表示字符量词总是指你放在它前面的东西,它可能是单个字符或包含在[].
编辑:正如root在评论中提到的,您可能想查看\w,这是“所有单词字符”的简短表示法。它包括所有字母和数字,以及下划线和特殊字符(如果它们是由当前语言环境特别定义的)。