为什么这个正则表达式不起作用?
import re
i="<wx._controls.Button; proxy of <Swig Object of type 'wxButton *' at 0x2d040b0> >"
m = re.match("controls(.*)[;]", i)
if m:
print m.group(1)
它什么都不返回。我正在尝试获取介于“控件”和“;”之间的所有内容 此解决方案适用于其他测试用例,但不适用于此测试用例。
最佳答案
re.match
只匹配字符串的开头。你要re.search
.
但是,看起来您正在评估对象上的 repr
的结果以获取类名。为什么不直接使用 obj.__class__.__name__
呢?使用中duck typing并避免针对个别类的代码。
关于python - 正则表达式 获取介于两者之间的一切,Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10768679/