首页 > 后端开发 > php教程 > 正则表达式 - 一句php解析html页面的脚本问题

正则表达式 - 一句php解析html页面的脚本问题

WBOY
发布: 2016-06-06 20:48:34
原创
1136 人浏览过

<code class="lang-php">preg_match_all('/<td width="20%" align="left">.*/u',$html,$match,PREG_OFFSET_CAPTURE);


<p>主要是其中的正则表达式没看明白,开头的<code>/</code>和结尾的<code>/u</code>是代表其中的内容是unicode么?不需要用<code>\</code>转译这两个<code>/</code>么</p>

<p>然后<code>PREG_OFFSET_CAPTURE</code>这个flag到底又什么用,看了文档还是没怎么明白,希望各位大大指教</p>

                            
                        


                                                                                                                        
                     <h2>回复内容:</h2>
                      
                                                            <pre class="brush:php;toolbar:false"><code class="lang-php">preg_match_all('/<td width="20%" align="left">.*/u',$html,$match,PREG_OFFSET_CAPTURE);


<p>主要是其中的正则表达式没看明白,开头的<code>/</code>和结尾的<code>/u</code>是代表其中的内容是unicode么?不需要用<code>\</code>转译这两个<code>/</code>么</p>

<p>然后<code>PREG_OFFSET_CAPTURE</code>这个flag到底又什么用,看了文档还是没怎么明白,希望各位大大指教</p>

                            
                        
            <p class="answer fmt" data-id="1020000000334059">
                                    </p>
<p>/ / 是表示中间内容是表达式。 
u 是修饰符,定义这个模式字符串被认为是utf-8的。</p>

<p>http://www.php.net/manual/zh/reference.pcre.pattern.modifiers.php</p>

                            
            <p class="answer fmt" data-id="1020000000334114">
                                    </p>
<p>嗯,//标示正则表达式开始结束,u是修饰符,具体可见 http://www.php.net/manual/zh/reference.pcre.pattern.modifiers.php</p>

<p>Flag结果排序方式,结合实际测试可以更清楚。</p>

<p>PREG<em>PATTERN</em>ORDER
结果排序为$matches[0]保存完整的所有匹配, $matches[1] 保存第一个()的所有匹配,以此类推</p>

<p>PREG<em>SET</em>ORDER
结果排序为$matches[0]包含第一次匹配得到的所有匹配(包含子组), $matches[1]是包含第二次匹配到的所有匹配(包含子组)的数组,以此类推。</p>

                            </td></code>
登录后复制
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板