如何使用PHP中的正则表达式

王朝php·作者佚名  2006-11-24
窄屏简体版  字體: |||超大  

在PHP中正则表达式用于复杂字符串的处理。所支持的正则表达式如下:

ereg()

ereg_replace()

eregi()

eregi_replace()

split()

(1)ereg,eregi

这是正规表达式匹配函数,前者是大小写有关匹配,后者则是无关的.

用法:

ereg(正规表达式,字符串,[匹配部分数组名]);

PHP3.0中的正规表达式大体类似于grep中用的.

(2)ereg_replace,eregi_replace

这些是替换函数.

用法:

ereg_replace(正规表达式,替换串,原字符串);

字符串处理函数中有一个strtr,是"翻译"函数,类似于Perl中的tr/.../.../,

用法:

strtr(字符串,"从","到");

例如:

strtr("aaabb","ab","cd")返回"cccdd".

(3)split

与explode函数有些类似,但这次可以在匹配某正规表达式的地方分割字符串.

用法:

split(正规表达式,字符串,[取出前多少项]);

这些函数都使用正则字符串做为第一个参数。PHP使用Posix 1003.2标准所定义的扩展正则字符串。要查考Posix正则表达式的完整描述请看PHP软件包中regex目录下的man页。

Example 2-4. Regular expression examples

ereg("abc",$string);

/* Returns true if "abc" is found anywhere in $string. */

ereg("^abc",$string);

/* Returns true if "abc" is found at the beginning of $string. */

ereg("abc$",$string);

/* Returns true if "abc" is found at the end of $string. */

eregi("(ozilla.[23]|MSIE.3)",$HTTP_USER_AGENT);

/* Returns true if client browser is Netscape 2, 3 or MSIE 3. */

ereg("([[:alnum:]]+) ([[:alnum:]]+) ([[:alnum:]]+)",$string,$regs);

/* Places three space separated words into $regs[1], $regs[2] and $regs[3]. */

ereg_replace("^","

",$string);

/* Put a

tag at the beginning of $string. */

ereg_replace("$","

",$string);

/* Put a

tag at the end of $string. */

ereg_replace("\n","",$string);

/* Get rid of any carriage return characters in $string. */

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航