(转)PHP的ereg()与eregi()的不同及相同点。对比

ereg()

字符串比对解析。

语法: int ereg(string pattern, string string, array [regs]);

返回值: 整数/数组

函数种类: 资料处理

内容说明

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


使用范例

简单例子:

<?php
if (ereg("c","abcdef")){     //说明:判断abcdef中是否含有字母c
     echo "通过";
}else{
     echo "错误";
}
?>

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

<?php
if (ereg("^[_/.0-9a-z-][email protected]([0-9a-z][0-9a-z-]+/.)+[a-z]{2,3}$",$email)) {
   echo "您的 E-Mail 通过初步检查";
}
?>

eregi()

用法与 ereg() 相同。不同之处在于

下面举例说明这两个函数的区别:

在abcdef中查找是否含有大写字母C

<?php
if (ereg("C","abcdef")){
     echo "通过";
}else{
     echo "错误";
}
?>
//返回结果是:错误

<?php
if (eregi("C","abcdef")){
     echo "通过";
}else{
     echo "错误";
}
?>
//返回结果是:通过

ereg() 有区分大小写,eregi()本函数与大小写无关。

例子

<?php
$str="a";
if(eregi("[0-9]+",$str)){
   echo"这是一个数字";
}
else if(eregi("[a-z]+",$str)){
   echo"这是一个字母";
}
else if(eregi("[一-龥]+",$str)){
   echo"这是一个汉字";
}
?>
时间: 2024-10-21 11:29:47

(转)PHP的ereg()与eregi()的不同及相同点。对比的相关文章

正则表达式3

正则表达式用于字符串处理.表单验证等场合,实用高效.本文收集了一些常用的表达式: $str = preg_replace("/(<a.*?>)(.*?)(<\/a>)/", '\1<span>\2</span>\3', $str); 其中用了三个子模式(每个圆括号中内容为一个子模式),第一个是链接开始标签,第二个是链接文本,第三个是</a> 然后第二个参数中\1.\2.\3就表示这三个部分,要替换成什么样子还不简单? 获取页面

PHP-php.ini中文版

今天细看了下配置文件 有很多没用过的 就从网上搜了一篇 常看看 ;;;;;;;;;;;;;;;; 简介 ;;;;;;;;;;;;;;;;; 本文并非是对英文版 php.ini 的简单翻译,而是参考了众多资料以后,结合自己的理解,增加了许多内容,; 包括在原有 php.ini 基础上增加了一些实用模块的配置说明,同时对文件内容的安排进行了调整.; 由于作者不喜欢 no-free 的玩意儿,所以删除了除 MySQL 和 PostgreSQL 以外的其他数据库模块配置选项. ;;;;;;;;;;;;;

&lt;转&gt;PHP中正则表达式函数

PHP中的正则表达式函数 在PHP中有两套正则表达式函数库.一套是由PCRE(Perl Compatible Regular Expression)库提供的,基于传统型NFA.PCRE库使用和Perl相同的语法规则实现了正则表达式的模式匹配,其使用以"preg_"为前缀命名的函数.另一套是由POSIX(Portable Operation System interface)扩展库提供的,基于POSIX NFA.POSIX扩展的正则表达式由POSIX 1003.2定义,一般使用以&quo

PHP正则表达式简介

PHP支持两种风格的正则表达式语法:POSIX和Perl.POSIX风格的正则表达式更容易掌握,但不能安全用于二进制模式,而Perl兼容的正则表达式相对比较复杂. 正则表达式就是有普通字符(如a~z)和特殊字符(称为元字符)组成的字符串模式.使用正则表达式可以完成以下功能:①测试字符串的某个模式:②替换文本:③根据模式匹配从字符串中提取一个子字符串. 一.POSIX风格的正则表达式 1.编写正则表达式 正则表达式是有普通字符和元字符组成的,通过元字符和普通字符的不同组合,可以写出不同意义的正则表

preg_match()——php

第一,让我们看看两个特别的字符:‘^’和‘$’他们是分别用来匹配字符串的开始和结束,以下分别举例说明: "^The": 匹配以 "The"开头的字符串; "of despair$": 匹配以 "of despair" 结尾的字符串; "^abc$": 匹配以abc开头和以abc结尾的字符串,实际上是只有abc与之匹配: "notice": 匹配包含notice的字符串: 你可以看见如果你

看实例学正则表达式

首先,让我们看看两个特别的字符:'^' 和'$' 他们是分别用来匹配字符串的开始和结束,一下分别举例说明: "^The": 匹配以"The"开头的字符串; "of despair$": 匹配以"of despair" 结尾的字符串; "^abc$": 匹配以abc开头和以abc结尾的字符串,实际上是只有abc与之匹配: "notice": 匹配包含notice的字符串: 你可以看见如果你

TRegExpr正则表达式

TRegExpr正则表达式 2006-10-24 10:55 DELPHi中的REGEXPR   [ 2006-03-29 11:33:46 am | Author: Admin ] 其实这个Pascal单元我在几个论坛上面都推荐过,也是我唯一会用的DELPHI下面的正则表达式实现. 正则表达式是个极其繁琐和强大的东西,小生才疏学浅,也不准备写正则表达式的教程,借着对这个单元的介绍,会有一些浅显且有用的例子. 首先介绍的是这个单元的主角:TRegExpr类,这个类包括很多成员,这里仅简单的介绍一

PHP中有关正则表达式的函数集锦

之前学正则表达式的目的是想从网上抓取点小说啊,文档啊,还有获取相应的视频连接然后批量下载.当时初学PHP根本不知道PHP有专门抓包的工具,就像Simple_html_dom.php(在我的其他博文中有提到),之前根本就不知道有这东西,所以就自己废着劲去学习正则表达式,然后再学习PHP中正则表达式的函数是如何使用的,然后再分析自己要抓取的DOM,最后写自己的正则表达式,正则表达式,写着还可以,不过自己刚写完的正则表达式就可能看不出他是什么意思. 有种调侃正则表达式式的说法,把正则表达式叫做火星文.

PHP正则表达式实例汇总

$str = preg_replace("/(<a.*?>)(.*?)(<\/a>)/", '\1<span class="link">\2</span>\3', $str); 其中用了三个子模式(每个圆括号中内容为一个子模式),第一个是链接开始标签,第二个是链接文本,第三个是</a> 然后第二个参数中\1.\2.\3就表示这三个部分 获取任意的字符串$string中的所有链接地址($string可以是从一