1

正则表达式的新手,我很难re_replace在 python 中为这个自定义函数组合一个正则表达式参数:

{{fieldname|re_replace(pattern, replacement)}}

该模式使用正则表达式,我想返回以下内容id=0123456,其中字段名遵循以下格式:

https://a.website.com/page.php?id=0123456&variable1=abcde123&variable2=abc123de

我已经设法替换了,id=0123456但无法做到相反。提前致谢。

4

2 回答 2

2

您可以使用re.search而不是您自己的自定义函数来执行此操作吗?

语法是:

re.search(r'id\=\d+', fieldname).group(0)      # return 'id=0123456'
re.search(r'(?<=id\=)\d+', fieldname).group(0) # return '0123456'

要进行逆运算,您可以使用re.sub.

于 2012-09-18T18:24:20.157 回答
0

查看命名捕获。这样你就可以做这样的事情:

(?P<name>...)

并使用match.groupdict()并返回包含匹配项的命名字典。在此处阅读更多信息:http: //docs.python.org/library/re.html

于 2012-09-18T18:54:16.810 回答