uTools-Manuals/docs/php/ereg.html
2019-04-08 23:22:26 +08:00

77 lines
5.5 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>正则表达式匹配</title>
</head>
<body class="docs"><div id="layout">
<div id="layout-content"><div id="function.ereg" class="refentry">
<div class="refnamediv">
<h1 class="refname">ereg</h1>
<p class="verinfo">(PHP 4, PHP 5)</p><p class="refpurpose"><span class="refname">ereg</span> &mdash; <span class="dc-title">正则表达式匹配</span></p>
</div>
<div class="refsect1 unknown-unknown-seealsq" id="refsect1-function.ereg-unknown-unknown-seealsq">
<h3 class="title">说明</h3>
<div class="methodsynopsis dc-description">
<span class="methodname"><strong>ereg</strong></span>
( <span class="methodparam"><span class="type">string</span> <code class="parameter">$pattern</code></span>
, <span class="methodparam"><span class="type">string</span> <code class="parameter">$string</code></span>
[, <span class="methodparam"><span class="type">array</span> <code class="parameter reference">&$regs</code></span>
] ) : <span class="type">int</span></div>
<blockquote class="note"><p><strong class="note">Note</strong>:
<p class="para">
使用 Perl 兼容正则表达式语法的 <span class="function"><a href="preg_match.html" class="function">preg_match()</a></span>
函数通常是比 <span class="function"><strong>ereg()</strong></span> 更快的替代方案。
</p>
</p></blockquote>
<p class="simpara">
以区分大小写的方式在 <code class="parameter">string</code>
中寻找与给定的正则表达式 <code class="parameter">pattern</code> 所匹配的子串。
</p>
<p class="simpara">
如果找到与 <code class="parameter">pattern</code>
中圆括号内的子模式相匹配的子串并且函数调用给出了第三个参数
<code class="parameter">regs</code>,则匹配项将被存入
<code class="parameter">regs</code> 数组中。$regs[1]
包含第一个左圆括号开始的子串,$regs[2]
包含第二个子串,以此类推。$regs[0] 包含整个匹配的字符串。
</p>
<blockquote class="note"><p><strong class="note">Note</strong>:
<span class="simpara">
直到 PHP 4.1.0 为止,<var class="varname"><var class="varname">$regs</var></var>
将被填充为正好十个单元,即使实际匹配的子串少于十个。这并不影响
<span class="function"><strong>ereg()</strong></span> 匹配更多子串的能力。如果没有找到匹配,则
<em>$regs</em> 不会被 <span class="function"><strong>ereg()</strong></span> 更改。
</span>
</p></blockquote>
<p class="simpara">
如果在 <code class="parameter">string</code>
中找到 <code class="parameter">pattern</code> 模式的匹配则返回
所匹配字符串的长度,如果没有找到匹配或出错则返回 <strong><code>FALSE</code></strong>。如果没有传递入可选参数
<code class="parameter">regs</code> 或者所匹配的字符串长度为 0则本函数返回 1。
</p>
<p class="para">
以下代码片断接受 ISO 格式的日期YYYY-MM-DD然后以
DD.MM.YYYY 格式显示:
</p>
<p class="para">
<div class="example" id="example-5884">
<p><strong>Example #1 <span class="function"><strong>ereg()</strong></span> 例子</strong></p>
<div class="example-contents">
<div class="phpcode"><pre><span style="color: #000000">
<span style="color: #0000BB">&lt;?php<br /></span><span style="color: #007700">if&nbsp;(</span><span style="color: #0000BB">ereg&nbsp;</span><span style="color: #007700">(</span><span style="color: #DD0000">"([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})"</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$date</span><span style="color: #007700">,&nbsp;</span><span style="color: #0000BB">$regs</span><span style="color: #007700">))&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"</span><span style="color: #0000BB">$regs</span><span style="color: #007700">[</span><span style="color: #0000BB">3</span><span style="color: #007700">]</span><span style="color: #DD0000">.</span><span style="color: #0000BB">$regs</span><span style="color: #007700">[</span><span style="color: #0000BB">2</span><span style="color: #007700">]</span><span style="color: #DD0000">.</span><span style="color: #0000BB">$regs</span><span style="color: #007700">[</span><span style="color: #0000BB">1</span><span style="color: #007700">]</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br />}&nbsp;else&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;</span><span style="color: #DD0000">"Invalid&nbsp;date&nbsp;format:&nbsp;</span><span style="color: #0000BB">$date</span><span style="color: #DD0000">"</span><span style="color: #007700">;<br />}<br /></span><span style="color: #0000BB">?&gt;</span>
</span>
</pre></div>
</div>
</div>
</p>
<p class="para">
参见 <span class="function"><a href="eregi.html" class="function">eregi()</a></span><span class="function"><a href="ereg_replace.html" class="function">ereg_replace()</a></span><span class="function"><a href="eregi_replace.html" class="function">eregi_replace()</a></span><span class="function"><a href="preg_match.html" class="function">preg_match()</a></span><span class="function"><a href="strpos.html" class="function">strpos()</a></span>
<span class="function"><a href="strstr.html" class="function">strstr()</a></span>
</p>
</div>
</div></div></div></body></html>