关于正则表达式,似乎译成:字符串解析处理,较合乎字面上的意义。但目前所有的相关书籍都译成正则表达式或是正规表示法....等等,实际上是负责字符串解析比对,并对字符串做相关的处理。

本函数库让PHP也能处理复杂的字符串操作。它采用了POSIX1003.2的扩充常规处理的标准。关于正则表达式的信息可以参考UNIXShell、Perl或是awk等相关的书籍。

ereg:字符串比对解析。

ereg_replace:字符串比对解析并取代。

eregi:字符串比对解析,与大小写无关。

eregi_replace:字符串比对解析并取代,与大小写无关。

split:将字符串依指定的规则切开。

sql_regcase:将字符串逐字返回大小写字符。

ereg字符串比对解析。

语法:intereg;

返回值:整数/数组

函数种类:资料处理

内容说明:本函数以pattern的规则来解析比对字符串string。比对结果返回的值放在数组参数regs之中,regs[0]内容就是原字符串string、regs为第一个合乎规则的字符串、regs就是第二个合乎规则的字符串,余类推。若省略参数regs,则只是单纯地比对,找到则返回值为true。

使用范例,这个例子可对使用者输入的E-Mail作简单的检查,检查使用者的E-Mail字符串是否有@字符,在@字符前有英文字母或数字,在之后有数节字符串,最后的小数点后只能有二个或三个英文字母。super@mail.wilson.gs就可以通过检查,super@mail.wilson就不能通过检查。

?php

if+[a-z]{2,3}$",$email)){

echo"您的E-Mail通过初步检查";

}

?

参考:ereg_replaceeregieregi_replace

ereg_replace字符串比对解析并取代。

语法:stringereg_replace;

返回值:字符串

函数种类:资料处理

内容说明:本函数以pattern的规则来解析比对字符串string,欲取而代之的字符串为参数replacement。返回值为字符串类型,为取代后的字符串结果。

使用范例

?php

$text=‘Thisisa{1}day,not{2}and{3}.‘;

$daytype=array;

while}‘,$text,$regs)){

PHP正则表达式函数库

伊图教程网[www.etoow.com]

http:www.etoow.com/html/2007-10/1193233076.html

$found=$regs;

$text=ereg_replace;

}

echo"$textn";

Thisisafineday,notovercastandrainy.

?

参考:eregeregieregi_replace

eregi字符串比对解析,与大小写无关。

语法:interegi;

返回值:整数/数组

函数种类:资料处理

内容说明:本函数和ereg类似,用法也相同。不同之处在于ereg有区分大小写,本函数与大小写无关。

参考:eregereg_replaceeregi_replace

eregi_replace字符串比对解析并取代,与大小写无关。

语法:stringeregi_replace;

返回值:字符串

函数种类:资料处理

内容说明:本函数和ereg_replace类似,用法也相同。不同之处在于ereg_replace有区分大小写,本函数与大小写无关。

参考:eregereg_replaceeregi

split将字符串依指定的规则切开。

语法:arraysplit;

返回值:数组

函数种类:资料处理

内容说明:本函数可将字符串依指定的规则分开。切开后的返回值为数组变量。参数pattern为指定的规则字符串、参数string则为待处理的字符串、参数limit可省略,表示欲处理的最多合乎值。值得注意的是本函数的pattern参数有区分大小写。

参考:explodeimplode

sql_regcase将字符串逐字返回大小写字符。

语法:stringsql_regcase;

返回值:数组

函数种类:资料处理

内容说明:本函数可将字符串之字符逐字返回大小写。在PHP使用上,本函数没有什么作用,但可能可以提供外部程序或库处理。

使用范例,例中的返回字符串为[Ww][Ii][Ll][Ss][Oo][Nn]

?php

print);

?