`
gzycnet
  • 浏览: 32395 次
  • 性别: Icon_minigender_1
  • 来自: 贵阳
社区版块
存档分类
最新评论

贴几个常用的正则表达式PHP代码

阅读更多

$str = preg_replace("/(<a.*?>)(.*?)(<\/a>)/", '\1<span class="link">\2</span>\3', $str);
其中用了三个子模式(每个圆括号中内容为一个子模式),第一个是链接开始标签,第二个是链接文本,第三个是</a>
然后第二个参数中\1、\2、\3就表示这三个部分,要替换成什么样子还不简单?
获取页面中的所有链接地址的PHP函数
下面这个用PHP写的函数,可以获取任意的字符串$string中的所有链接地址($string可以是从一个HTML页面文件直接读取出来的字符串), 结果保存在一个数组中返回.该函数自动把电子邮件地址排除在外,而且返回的数组中不会有重复元素.
代码如下:
function GetAllLink($string)
{
$string = str_replace("\r","",$string);
$string = str_replace("\n","",$string);
$regex[url] = "((http|https|ftp|telnet|news):\/\/)?([a-z0-9_\-\/\.]+\.[][a-z0-9:;&#@=_~%\?\/\.\,\+\-]+)";
$regex[email] = "([a-z0-9_\-]+)@([a-z0-9_\-]+\.[a-z0-9\-\._\-]+)";
//去掉标签之间的文字
$string = eregi_replace(">[^<>]+<","><", $string);
//去掉JAVASCRIPT代码
$string = eregi_replace("<!--.*//-->","", $string);
//去掉非<a>的HTML标签
$string = eregi_replace("<[^a][^<>]*>","", $string);
//去掉EMAIL链接
$string = eregi_replace("<a([ ]+)href=([\"']*)mailto:($regex[email])([\"']*)[^>]*>","", $string);
//替换需要的网页链接
$string = eregi_replace("<a([ ]+)href=([\"']*)($regex[url])([\"']*)[^>]*>","\\3\t", $string);
$output[0] = strtok($string, "\t");
while(($temp = strtok("\t")))
{
if($temp && !in_array($temp, $output))
$output[++$i] = $temp;
}
return $output;
}

以下是以PHP的语法所写的示例
验证字符串是否只含数字与英文,字符串长度并在4~16个字符之间
代码如下:
<?php
$str = 'a1234';
if (preg_match("^[a-zA-Z0-9]{4,16}$", $str)) {
echo "验证成功";} else {
echo "验证失敗";}?>


简易的台湾身分证字号验证
代码如下:

<?php
$str = 'a1234';
if (preg_match("^(?:\d{15}|\d{18})$", $str)) {
echo "验证成功";
} else {
echo "验证失敗";}
?>
分享到:
评论

相关推荐

    php常用正则表达式类.zip

    "php常用正则表达式类.zip"这个压缩包文件提供了一个专为PHP设计的正则表达式类库,方便开发者在处理各种常见输入数据时进行快速且准确的验证。 类库主要涵盖了以下几种常见的数据验证: 1. **用户名验证**:通常...

    php 正则表达式简单介绍

    下面通过几个具体的例子来展示如何在PHP中使用正则表达式: 1. **验证电子邮件地址**: ```php if (preg_match('/^([a-zA-Z0-9_.+-])+@([a-zA-Z0-9-])+\.([a-zA-Z0-9-.])+$/', $email)) { echo "邮箱格式正确!...

    精通正则表达式_第三版(高清版).

    正则表达式的特性大致可以分为以下几个方面: 1. 元字符:这些字符具有特殊的含义,是构建正则表达式的基础。例如,“.”可以匹配除换行符之外的任意单个字符,“*”表示匹配前面的子表达式零次或多次,“+”表示...

    JAVA正则表达式 从入门到进阶

    基础的正则表达式知识包括以下几个关键概念: 1. **句点符号**(.):句点代表任意单个字符,可以用来匹配任何非换行符字符。例如,"t.n"将匹配以"t"开头,以"n"结尾,中间任何字符的字符串。 2. **方括号符号**...

    精通正则表达式~~~

    精通正则表达式第三版 搜集于网络 前言..........I 第1章:正则表达式入门.... 1 解决实际问题... 2 作为编程语言的正则表达式... 4 以文件名做类比... 4 以语言做类比... 5 正则表达式的知识框架... 6 对于...

    java正则表达式讲义.ppt

    基础的正则表达式知识包括以下几个关键概念: 1. **句点符号 (.)**:句点匹配任何单个字符,包括空格和特殊字符。如果想匹配特定字符集合,需要避免句点的广泛匹配。 2. **方括号符号 ([...])**:方括号用于指定一...

    php常用正则表达式

    在正则表达式中,有几个核心概念: 1. **元字符(Meta-character)**:元字符拥有特殊的含义,如`\A`用于匹配字符串的开始,`\Z`用于匹配字符串的结束,`\b`用来匹配单词边界,`\d`匹配数字,`\D`匹配非数字,`\w`...

    基于PHP的正则表达式在线测试 php版.zip

    首先,我们需要了解PHP中用于处理正则表达式的几个关键函数: 1. `preg_match()`:此函数用于检测字符串是否匹配一个模式。如果匹配成功,它将返回1;如果没有匹配,返回0;如果发生错误,返回false。 2. `preg_...

    php正则表达式全集.txt

    本文将深入解析由“php正则表达式全集.txt”文件提供的部分正则表达式示例,涵盖电话号码验证、电子邮件格式检查、日期格式校验等多个实用案例,旨在为PHP开发者提供全面的正则表达式知识指南。 #### 电话号码验证 ...

    精通正则表达式 最新版中文版.Jeffrey.E.F.Friedl

    《精通正则表达式》是美国作者Jeffrey E. F. Friedl的经典之作,被誉为正则表达式的权威指南。本书的最新版针对多种编程语言,包括PHP、Web、Java、Python和Node.js等广泛使用的开发环境,提供了深入浅出的正则...

    PHP实例开发源码—正则表达式在线测试 php版.zip

    在本压缩包“PHP实例开发源码—正则表达式在线测试 php版.zip”中,包含了一个基于PHP的正则表达式在线测试平台的源代码。这个实例是开发者学习和测试正则表达式功能的好工具,它可以帮助我们理解和运用PHP中的正则...

    常用正则表达式匹配代码介绍

    在给出的代码示例中,提到了两个常用场景下的正则表达式校验方法: 1. 人民币金额校验: ```javascript var testRMB = function(v){ var reg = /^([1-9][\d]{0,7}|0)(\.[\d]{1,2})?$/; return reg.test(v); } ```...

    php正则表达式——记忆卡

    为了更好地理解和应用PHP正则表达式,我们将通过几个实际案例来加深印象。 ##### 3.1 邮箱地址验证 ```php function validateEmail($email) { return preg_match('/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2...

    Java中的正则表达式

    - **简化代码**:使用正则表达式可以极大地简化代码,例如在验证电子邮件地址的有效性时,传统的编程方法可能需要十几行代码,而使用正则表达式只需几行即可完成。 - **提高效率**:对于大量的文本处理任务,使用...

    php正则表达式全集

    3. **`preg_replace()`**:执行一个正则表达式的搜索和替换。 4. **`preg_split()`**:分割字符串为数组。 5. **`preg_quote()`**:对正则表达式中的特殊字符进行转义。 #### 三、正则表达式语法解析 1. **元字符*...

    RegexBuddy正则表达式编辑工具v3.11绿色版

    在正则表达式(Regex)的开发过程中,RegexBuddy提供了以下几个关键功能: 1. **编辑器**:RegexBuddy拥有一个直观的编辑界面,允许用户编写和修改正则表达式。它提供语法高亮、自动完成和错误检查等功能,确保你在...

    Java正则表达式入门介绍

    正则表达式的基础知识包括以下几个关键点: 1. **句点符号**(.):句点匹配任何单个字符,包括空格和换行符。例如,`t.n`将匹配所有以"t"开头,以"n"结尾,中间有一个任意字符的字符串。 2. **方括号符号**([])...

Global site tag (gtag.js) - Google Analytics