python - 如何使正则表达式匹配整个字符串?

标签 python regex

假设我有一个类似 test-123 的字符串. 我想测试它是否匹配 test-<number> 这样的模式, 其中<number>表示一个或多个数字符号。

我试过这段代码:

import re
correct_string = 'test-251'
wrong_string = 'test-123x'
regex = re.compile(r'test-\d+')
if regex.match(correct_string):
    print 'Matching correct string.'
if regex.match(wrong_string):
    print 'Matching wrong_string.'

我怎样才能做到只有correct_string匹配,以及 wrong_string不是吗?我尝试使用 .search而不是 .match但它没有帮助。

最佳答案

尝试在正则表达式中指定开始和结束规则:

re.compile(r'^test-\d+$')

关于python - 如何使正则表达式匹配整个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45244813/

相关文章:

python - 如何使用 Django 后台任务初始化重复任务?

python - 如何使用 python 遍历分页 API

python - Facebook Messenger 机器人应用程序 - 持久菜单未出现

python - python中的urlencode错误

python - to_csv "No Such File or Directory"但该目录确实存在 - ADLS 上的 Databricks

java - 如何在java正则表达式中使用嵌套非捕获组

java - 在Java中用一个感叹词正则表达式多个重复字符

python - 正则表达式每次运行都会给出不同的结果

javascript - 引号字符串列表的正则表达式匹配 - 不带引号

regex - Perl - 返回字符串中最后一个数字后的最后一个字母字符并返回修改后的字符串