python - 如何正则表达式匹配?

标签 python regex

我有以下行:

mystr = "1A) Monkey Hoop Jumping (MHJ) and Ring Toss (.50 Cents [YEAR2010]; .25 Cents [YEAR2016]) - The performance is estimated to be cheaper (MHJ;)"
mygroups = re.match('<match expression>', mystr)

如何在 python "re"中编写匹配表达式来获取以下组?

line = "1A"
activity = "Monkey Hoop Jumping (MHJ) and Ring Toss"
costin2010 = ".50"

我尝试了以下但它不起作用:

(?P<line>.+?)\) (?P<activity>.*?) \((?P<costin2010>[\d.]+ Cents [YEAR2010].*?)

最佳答案

我看到的两个问题:

  • 您在 costin2010
  • 中捕获的内容超出了应有的范围
  • 你没有跳出方括号

这个有效:

(?P<line>.+?)\) (?P<activity>.*?) \((?P<costin2010>[\d.]+) Cents \[YEAR2010]

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

相关文章:

python - 简单的 AtomPub 服务器库

Python 3 urllib VS 请求性能

Python 2.7 - 计算每行的分位数

python - app开发者应该如何使用setup.py和requirements.txt?

javascript - 如何创建等于 1,2,3 的正则表达式模式

匹配包含 X、Y 和 Z 的单词的正则表达式

php正则表达式,从字符串中提取电话号码?

python - Python中的中序遍历

python - 在正则表达式中用单引号混淆密码

java - Java 中的正则表达式求反