用于匹配URL中[字符]:[字符]的模式

时间:2015-07-24 00:14:17

标签: regex

我有一个如下所示的网址,并希望使用RegEx来提取以下字段:Id:ReferenceTitle:dfgdfgStatus.Title:Current StatusCreationDate:Logged ......

这是我得到的最接近的模式[=,][^,]*:[^,]*[,&],但显然结果并不像预期的那样,有更好的想法吗?

P.S。我使用[^,]来填充,以外的任何字符,因为,将不存在该段。

这是用于正则表达式模式匹配的站点。 http://regexpal.com/

网址: http://localhost/site/=powerManagement.power&query=_Allpowers&attributes=Id:Reference,Title:dfgdfg,Status.Title:Current Status,CreationDate:Logged,RaiseUser.Title:标题,_MinutesToBreach&sort_by=CreationDate"

谢谢,

2 个答案:

答案 0 :(得分:2)

您还没有指定您使用的编程语言。但几乎所有人都支持这一点:

([\p{L}\.]+):([\p{L}\.]+)

\p{L}匹配任何语言的Unicode字符,前提是您的正则表达式引擎支持Unicode。 RegEx 101

如果需要,您可以通过捕获组来提取匹配项。

答案 1 :(得分:-1)

在python中:

import re
matchobj = re.match("^.*Id:(.*?),Title:(.*?),.*$", url, )
Id = matchobj.group(1)
Title = matchobj.group(2)