繁体   English   中英

使用正则表达式匹配Python中的特定模式

[英]Using regex to match a specific pattern in Python

我正在尝试创建与以下模式匹配的正则表达式

注意x是一个数字,例如2

图案:

u'id': u'x'                # x = Any Number e.g: u'id': u'2'

到目前为止,我已经尝试了以下方法:

Regex = re.findall(r"'(u'id':u\d)'", Data)

但是,没有找到匹配项。

此正则表达式将匹配您的模式:

u'id': u'(\\d+)'

正则表达式的重要部分是:

  • 组成捕获组的方括号() (以便您可以获取信息
  • 数字标记\\d ,它指定任意数字0-9
  • 多重标记+ ,表示“至少1”

经过以下模式测试:

u'id': u'3'
u'id': u'20'
u'id': u'250'
u'id': u'6132838'

您将单引号放错了位置,应该使用\\d+而不是\\d

>>> s = "u'id': u'2'"
>>> re.findall(r"u'id'\s*:\s*u'\d+'", s)
["u'id': u'2'"]

尝试这个:

str1 =“ u'id':u'x'”

re.findall(r'u \\'id \\':u \\'\\ d + \\'',str1)

您需要转义单引号('),因为它是一个特殊字符

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM