读书人

求一不包含某一特定字符串可为其他任意

发布时间: 2012-04-22 18:34:46 作者: rapoo

求一不包含某一特定字符串可为其他任意字符的正则
多行模式,能匹配\n \r等换行符等等

{get("10")}
<a href="[row:sUrl]">[row:sTitle]</a>
<span>{cut}[row:sContent]{/cut}</span>
{/get}
{get("21")}
<a href="[row:sUrl]"><img src="[row:sImg]"></a>
{/get}


每个{get}... {/get} 当中的字符如何匹配?且{get}...{/get}中不会含{/get}?


[解决办法]
(?is){(get)[^}]+}((?!{\1}).)+?{/\1}

最好把你想要的结果帖一下
[解决办法]
(?is)(?<=\{get\}.*?(?=\{/get\}))
[解决办法]
{get}([\d\D]+?){/get}
[解决办法]

探讨

引用:

从你的描述来看,你应该是使用了贪婪匹配所导致的问题
Try:

(?is){(get)[^}]+}(.*?){/\1}


回复: 我写的正则获取的结果:

<a href="[row:sUrl]">[row:sTitle]</a>
<span>{cut}[row:sContent]{/cut}</span>
{/get}
{get("21"……

读书人网 >asp.net

热点推荐