【php正则中文】教程文章相关的互联网学习教程文章

PHP用正则匹配form表单中所有元素的类型和属性值实例代码

前言 最近工作中遇到一个需求,需要在正则匹配页面中,所有可能存在的 form 表单的元素,可能有 input,action,select,textarea等等所有可能的元素,本文给出一个代码示例。感兴趣的朋友们可以参考学习。实例代码如下 假设页面 1.html 的网页源代码是:<!DOCTYPE html> <html><head><meta charset="utf-8" /><title>一个含有 form 表单的登录注册页面</title><style type="text/css">*{padding:0;margin:0;font-size:12px;}.tbl{ma...

php正则去除网页中所有的html,js,css,注释的实现方法

如下所示: $search = array ("<script[^>]*?>.*?</script>si", // 去掉 javascript"<style[^>]*?>.*?</style>si", // 去掉 css"<[/!]*?[^<>]*?>si", // 去掉 HTML 标记"<!--[/!]*?[^<>]*?>si", // 去掉 注释 标记"([rn])[s]+", // 去掉空白字符"&(quot|#34);i", // 替换 HTML 实体"&(amp|#38);i","&(lt|#60);i","&(gt|#62);i","&(nbsp|#160);i","&(iexcl|#161);i","&(cent|#162);i","&(pound|#163);i","&(copy|#169)...

浅谈PHP正则中的捕获组与非捕获组【图】

今天遇到一个正则匹配的问题,忽然翻到有捕获组的概念,手册上也是一略而过,百度时无意翻到C#和Java中有对正则捕获组的特殊用法,搜索关键词有PHP时竟然没有相关内容,自己试了一下,发现在PHP中也是可行的,于是总结一下,分享的同时也希望有大神和细心的学习者找到我理解中出现的问题。 什么是捕获组 我们先看一下PHP的正则匹配函数 int preg_match ( string $pattern , string $subject [, array &$matches [, int $flags = 0 ...

PHP正则获取页面所有图片地址

<?php //取得页面所有的图片地址 function getimages($str) { $match_str = "/((http://)+([^ rn()^$!`"|[]{}<>]*)((.gif)|(.jpg)|(.bmp)|(.png)|(.GIF)|(.JPG)|(.PNG)|(.BMP)))/"; preg_match_all ($match_str,$str,$out,PREG_PATTERN_ORDER); return $out; } ?> /<img.*srcs*=s*["|]?s*([^>"s]*)/i ,我使用kindeditor保存文章,但是需要取出第N个图片的地址作为文章的标志图片,文章代码(内容的html)保存到数据库一个字段,然后图片...

PHP正则提取不包含指定网址的图片地址的例子

但是现在这个文章中可能含有一些表情,我们当然不能直接提取src路劲了,这样如果第一张是表情图片的话,就会提取表情图片来作为封面了,这时候我们就需要写清楚正则来排除不匹配的图片,下面是一个小列子:代码如下: $contents = <p>疲惫是一种享受,让我们无暇空虚;坎坷是一种经历,让我们真切的理解人生; 忙碌是一种幸福,让我们没有时间体会痛苦;奔波是一种快乐, <img src="http://img.baidu.com/hi/ldw/w_00...

php 正则 过滤html 的超链接

<?php echo preg_replace("/(?<=href=)([^\>]*)(?=\>)/i","#", "<a href='www.csdn.net'>你好,点这里看看</a><a href='www.gxlcms.com'>你好,点这里看看</a>"); ?> 正则:/(?<=href=)([^\>]*)(?=\>)/ (?<=exp) 匹配exp后面的位置 (?=exp) 匹配exp前面的位置 此正则 匹配 在 href= 之后 “>” 之前 的 非 “>” 的所有字符 例子:<a href='www.gxlcms.com'> 找到这些字符(url)用 # 替换,就可以去掉html里的所有链接。

基于PHP正则零宽断言的使用详解

这次给大家带来基于PHP正则零宽断言的使用详解,使用基于PHP正则零宽断言的注意事项有哪些,下面就是实战案例,一起来看一下。本文实例讲述了正则表达式之零宽断言。分享给大家供大家参考,具体如下:前言① 什么是零宽断言,为什么要使用零宽断言② 怎样使用零宽断言概念零宽断言,大多地方这样定义它,用于查找在某些内容(但并不包括这些内容)之前或之后的东西,也就是说它们像 \b ^ $ \< > 这样的锚定作用,用于指定一个位置,这...

php+正则将字符串中的字母数字和中文分割

如:$str="php如何将字 符串中322的字母数字sf f45d和中文_分割?";按数字或字母分割。代码如下:$str = "php如何将字 符串中322的字母数字Asf f45d和中文_分割?";$arr = preg_split("/([a-zA-Z0-9]+)/", $str, 0, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); print_r($arr); 结果代码如下:$new = array();$new[0]="php";$new[1]="如何将字 符串中";$new[2]="322";$new[3]="的字母数字";$new[4]="sf";$new[5]=" ";$new[6]=...

php正则替换变量指定字符的方法

本文实例讲述了php正则替换变量指定字符的方法。分享给大家供大家参考。具体如下: 这里介绍三种常用方法. 方法一: <?php $str = preg_quote((银子)); $txt = 我的呢称(银子); echo preg_replace("/($str)/","<span style=color:#f00;>$1</span>",$txt); ?>方法二: <?php $str = quotemeta((银子)); $txt = 我的呢称(银子); echo preg_replace("/($str)/","<span style=color:#f00;>$1</span>",$txt); ?>方法三: <?php $str = (...

学php正则!超基础简单例子

问题是这样的,某个情况下要给:http://jb51.net?a=1 这类url地址追加参数变为:http://jb51.net?a=1&b=2 但是怎么知道已经存在相同参数名呢,例如有这种情况:http://jb51.net?a=1&a=2 这个虽然不会有什么大错误,但是地址栏这样看起来很不好。那怎么办呢?用正则解决吧(本来我想用php的字符串处理解决的,但是后来觉得要学一下正则了就用正则做吧) 以下是我用于返回上一页的后台处理方法 代码如下:function _goBack($msg=null...

php 正则 不包含某字符串的正则表达式

常见函数 strstr($str, “abc”); 正则匹配 preg_match(”/(abc)?/is”, $str); 但是要匹配一个字符串中,不包含某字符串,用正则就比较麻烦了 如果不用正则 !strstr($str, “abc”); 就可以解决问题了 但是用正则呢,就只有这样了,”/^((?!abc).)*$/is” //------------------------------------------------ 代码如下: <?php $str = "dfadfadf765577abc55fd"; $pattern_url = "/^((?!abc).)*$/is"; if (preg_match($pat...

PHP 正则 email语句详解

代码如下:<?php if (eregi("^[_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3}$",$email)) { echo "您的 E-Mail 通过初步检查"; } ?> 在这句话里,首先是应用了一个eregi函数,这个函数还算好理解。随便找本书,就能给你一段解释: 语法: int ereg(string pattern, string string, array [regs]); 返回值: 整数/数组 本函数以 pattern 的规则来解析比对字符串 string。 比对结果返回的值放在数组参数 regs 之中,regs[0] 内容就是原...

PHP 正则的使用基础入门

我的正则入门,是起源于网上的一篇文章[1],这篇文章由浅入深的阐述了正则使用的方法,我觉得是一个很好的入门材料,不过学成还是要靠个人,在使用的过程中,还是会不断地忘记,因此反反复复的阅读了这篇文章有四五遍,对于其中一些比较困难的知识点,甚至要用很久才能消化,但是只要能见坚持着看完,你会发现自己对于正则的运用能力就会显著提高。 正则表达式: 用于描述字符排列和匹配模式的一种语法规则。它主要用于字符串的模式...

PHP正则匹配图片并给图片加链接详解

正则: 代码如下:$newstext=preg_replace(preg_replace('/(<img[^>]+src\s*=\s*”?([^>"\s]+)”?[^>]*>)/im', ‘<a href=”$2″>$1</a>', $newstext); 解说: 1.preg_replace和str_replace的区别: str_replace只是纯字符替换,而preg_replace才是正则替换 2.$0,$1,$2等的说明: $0指的是被整个模式所匹配的文本; $1指的是首个 ( ) 引用的串; $2指的是第二个()引用的串; 以此类推。

php正则之函数 preg_replace()参数说明

preg_replace 字符串比对解析并取代。 语法: mixed preg_replace(mixed pattern, mixed replacement, mixed subject); 返回值: 混合类型资料 函数种类: 资料处理 内容说明 本函数以 pattern 的规则来解析比对字符串 subject,欲取而代之的字符串为参数 replacement。返回值为混合类型资料,为取代后的字符串结果。 使用范例 下例返回值为 $startDate = 6/19/1969 代码如下:<?php $patterns = array("/(19|20\d{2})-(\d{1,...