使用Django URL模式匹配器作为组件

时间:2019-06-12 12:54:42

标签: django python-3.x


我想有可能,但是我仍然没有找到任何解决方案。我正在寻找一种使用Django URL模式匹配器进行其他数据处理的方法

例如:
我有以下模式
"MySpecific-(?P<my_parameter>)-(?P<my_second_parameter>)"
并跟随常规字符串
"MySpecific-test-123"

所以我想要的是通过dict形状的规则形式的常规字符串提取参数

{
  "my_parameter": "test",
  "my_second_parameter: "123"
}



伪代码:

import matcher from django_matcher_package

my_pattern = "MySpecific-(?P<my_parameter>)-(?P<my_second_parameter>)"
my_string = "MySpecific-test-123"

extracted_values = matcher.match(my_pattern, my_string)

1 个答案:

答案 0 :(得分:1)

那只是Python的正则表达式支持:

>>> pattern="MySpecific-(?P<my_parameter>.+)-(?P<my_second_parameter>.+)"
>>> s="MySpecific-test-123"
>>> import re
>>> match = re.match(pattern, s)
>>> match.groupdict()
{'my_parameter': 'test', 'my_second_parameter': '123'}

请注意,我两次在您的模式中添加了'。+',否则在这些组中将没有任何匹配项。