+ -
当前位置:首页 → 问答吧 → 一个html标记匹配正则,请高手指点一下

一个html标记匹配正则,请高手指点一下

时间:2011-01-27

来源:互联网

/<(\/\s*)?((\w+:)?\w+)(\w+(\s*=\s*((["'])(\\["'tbnr]|[^\7])*?\7|\w+)|.{0})|\s)*?(\/\s*)?>/ig


1、((\w+:)?\w+) 匹配标签名

这个冒号起什么作用?

2、\7表示引用第七个子表达式结果,[^\7],表示非第七个引用吗?

作者: alake   发布时间: 2011-01-27

自己顶,没人知道   ((\w+:)?\w+)  这个究竟是怎么回事儿吗?

$reg = "#<(?:\/\s*)?((\w+:)?\w+)(.*)(?:\/\s*)?>#i";
匹配的结果
[0] => <html xmlns="http://www.w3.org/1999/xhtml">
    [1] => html
    [2] =>
    [3] =>  xmlns="http://www.w3.org/1999/xhtml"

似乎把:换成任意一个符号都可以但是不能没有这个符号啊,奇怪

作者: alake   发布时间: 2011-01-27

1 :匹配 :
2, 匹配1个字符,该字符不是/或者7

作者: justlooks   发布时间: 2011-01-27



QUOTE:
1 :匹配 :
2, 匹配1个字符,该字符不是/或者7
justlooks 发表于 2011-01-27 13:33




    谢谢,2, 匹配1个字符,该字符不是/或者7,为什么不是/或者不是7,我查了不少资料都没看到这个说法啊,或者在哪儿能搜到?

作者: alake   发布时间: 2011-01-27

回复 alake


    看看这个吧
http://bbs.chinaunix.net/viewthread.php?tid=149723

作者: yinyuemi   发布时间: 2011-01-27



QUOTE:
回复  alake


    看看这个吧
yinyuemi 发表于 2011-01-27 13:43



谢谢yinyuemi,我看了这篇帖子3遍,没看到冒号:的用法啊

作者: alake   发布时间: 2011-01-27