【发布时间】:2014-07-09 16:35:26
【问题描述】:
我有以下正则表达式:
@"{0}(.+?)(?:{1}(.{4}?))*(?:{2}(.+?))?{3}", "\\[\\[\\[", "\\|\\|\\|", "\\/\\/\\/", "\\]\\]\\]
要查找包裹在 [[[something]]]、[[[something///comment]]] 中的项目。
我正在使用它来解析网络响应中的某些内容...
问题是在我的网络响应中,我有一些编码如下:
%5B%5B%5BPedido%20de%20Informa%C3%A7%C3%A3o%5D%5D%5D
所以我无法确定它以 [[[ 并以 ]]] 开头以及其他项目。
有没有办法在正则表达式方面解决这个问题?
【问题讨论】:
-
您可以扩展正则表达式以查找转义括号以及普通括号,但正则表达式很快就会变得不可读。字符串上的 HtmlDecode 会更好地处理这个问题。任何对 Web 响应的正则表达式解析都容易在极端情况下或有人恶意发送值时中断。
标签: c# regex asp.net-mvc