以字母开头,后接字母或数字,最后以句点结尾

0 投票
2 回答
1066 浏览
提问于 2025-04-17 13:33

我想创建一个Python的正则表达式,用来匹配一个特定的模式:这个模式总是以任意一个大写或小写字母开头,后面可以跟任意数量的字母或数字,最后一定以一个句号(.)结束。

比如,这个模式可以匹配在下面这段HTML代码中包含问题标签的行(例如:Q42.):

<p>Q42. Which of the following newspapers, if any, do you read on a regular 
   basis? Please select all that apply:</p>
<p>NY Times</p>
<p>Chicago Tribune</p>

编辑:
我试过 [a-zA-Z]\W*\.
这段代码的意思是,任何一个大写或小写字母后面可以跟任意数量的字母(大写或小写)或数字,最后再跟一个句号。

编辑:
我只是想测试整行是否包含这些字符。只想知道结果是 True 还是 False

2 个回答

3

试试这个:

[a-zA-Z][a-zA-Z0-9]*\.

需要注意的是,\w 会匹配字母、数字和下划线。

2

关闭:

\b[a-zA-Z]\w*\.

这样就可以了。

\W的意思是“任何字符,除了字母和数字”,所以你需要用相反的,\w

\b是一个单词边界,确保我们从一个单词的开头开始匹配。

撰写回答