正则:分组问题

WBOY
發布: 2016-06-06 20:46:25
原創
968 人瀏覽過

数据

<code><li><a href="/html/zjly/">走进临沂</a></li>
<li><a href="/html/csmp/">城市名片</a></li>
<li><a href="/html/tzys/">投资优势</a></li>
<li><a href="/html/zzcy/">支柱产业</a></li>
<li><a href="/html/xyjj/">县域经济</a></li>
<li><a href="/html/tzfw/">投资服务</a></li>
</code>
登入後複製
登入後複製

正则1:

<code>(?</code>
登入後複製
登入後複製
登入後複製
登入後複製

匹配结果
正则:分组问题


正则2:

<code>(?</code>
登入後複製
登入後複製
登入後複製
登入後複製

匹配结果
正则:分组问题

问题
正则1和正则2只有中间的(\1)\"',按我的理解,此时的分组结果:\1要吗是"或',此时的正则表达式2((?)应该能够正常匹配url才对,而结果却不是这样的(如第2图所示)

回复内容:

数据

<code><li><a href="/html/zjly/">走进临沂</a></li>
<li><a href="/html/csmp/">城市名片</a></li>
<li><a href="/html/tzys/">投资优势</a></li>
<li><a href="/html/zzcy/">支柱产业</a></li>
<li><a href="/html/xyjj/">县域经济</a></li>
<li><a href="/html/tzfw/">投资服务</a></li>
</code>
登入後複製
登入後複製

正则1:

<code>(?</code>
登入後複製
登入後複製
登入後複製
登入後複製

匹配结果
正则:分组问题


正则2:

<code>(?</code>
登入後複製
登入後複製
登入後複製
登入後複製

匹配结果
正则:分组问题

问题
正则1和正则2只有中间的(\1)\"',按我的理解,此时的分组结果:\1要吗是"或',此时的正则表达式2((?)应该能够正常匹配url才对,而结果却不是这样的(如第2图所示)

([^(\1)]*)的问题在于方括号里面不能使用编号...

------------------

补充: \1在方括号是没有后向引用的作用的. \1在方括号中代表的意思是ctrl-a,16进制的\x01.就如\11匹配的是tab.
参考:Escape sequences

还有, \1如果有反向引用的作用,就有可能与 []是针对字符集里的单个字符为单位进行匹配这个规则冲突.所以,\1[]没有反向引用的作用.

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!