php正则或
⑴ php正则表达式如何写
/^(?:(?!<p>)[\s\S])*<p>[\s\S]*<\/p>(?:(?!<\/p>)[\s\S])*$/i
⑵ php正则表达式求助
没错,PHP的preg_match函数是只返回一条匹配内容,preg_match_all返回一个多维数组.
根据你的正则表达式,你是想取(.*)中的数据吧,那么你只要打印第一捕获组的数据,就是print_r($neirong[1]);如果有多条数据匹配,那么它还是一个一维数组,你可以用for循环遍历它.
for($i=0;$i<count($neirong[1]);$i++){
print_r($neirong[1][$i]." ");
}
这样就没有数组输出了.
⑶ 详解PHP正则表达式:什么是正则表达式
正则表达式,又称规则表达式,英文名为Regular Expression,在代码中常简写为regex、regexp或RE,是计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。
正则表达式是对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。正则表达式是一种文本模式,模式描述在搜索文本时要匹配的一个或多个字符串。
⑷ PHP 正则表达式
代码如下:
<?php
$str=file_get_contents('http://abc.com/aaa.php');
if (preg_match('|<input name="a" type="hidden" value="([^"]*)"/>|', $str, $reg)) $out=$reg[1];
else $out='';
echo "$out<br>\n";
?>
⑸ php正则表达式是什么
是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。
正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。
给定一个正则表达式和另一个字符串,我们可以达到如下的目的:
1. 给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”);
2. 可以通过正则表达式,从字符串中获取我们想要的特定部分。
正则表达式的特点是:
1. 灵活性、逻辑性和功能性非常的强;
2. 可以迅速地用极简单的方式达到字符串的复杂控制。
3. 对于刚接触的人来说,比较晦涩难懂。
由于正则表达式主要应用对象是文本,因此它在各种文本编辑器场合都有应用,小到着名编辑器EditPlus,大到Microsoft Word、Visual Studio等大型编辑器,都可以使用正则表达式来处理文本内容。
⑹ php正则表达式问题
/后边的是修正符
其中i是不区分大小写
修正符很有用的
例子:
<?php
//标记在整个模式之外;
例://$mode="/\bis\b/U",其中U在外面;
//修正符:i 不区分大小写的匹配;
//如:"/abc/i"可以与abc或aBC或ABc等匹配;
//修正符:m 将字符串视为多行,不管是那行都能匹配;
例://模式为:$mode="/abc/m";
//要匹配的字符串为:$str="bcefg5e\nabcdfe"
//注意其中\n,换行了;abc换到了下一行;
//$str和$mode仍可以匹配,修正符m使得多行也可匹配;
//修正符:s 将字符串视为单行,换行符作为普通字符;
例://模式为:$mode="/pr.y/";
//要匹配字符串为:$str="pr\ny";
//两者不可匹配; . 是除了换行以外的字符可匹配;
//修改下模式为:$mode="/pr.y/s";
//其中修正符s将\n视为普通字符,即不是换行;
//最后两者可以匹配;
//修正符:x 将模式中的空白忽略;
//修正符:A 强制从目标字符串开头匹配;
例://$mode="/abc/A";
//可以与$str="abcsdfi"匹配,
//不可以与$str2="sdsdabc"匹配;
//因为$str2不是以abc开头;
//修正符:D 如果使用$限制结尾字符,则不允许结尾有换行;
例://模式为:$mode="/abc$/";
//可以与最后有换行的$str="adshabc\n"匹配;
//元子符$会忽略最后的换行\n;
//如果模式为:$mode="/abc/D",
//则不能与$str="adshabc\n"匹配,
//修正符D限制其不可有换行;必需以abc结尾;
//修正符:U 只匹配最近的一个字符串;不重复匹配;
例:
如模式为:
$mode="/a.*c/";
$str="abcabbbcabbbbbc" ;
preg_match($mode,$str,$content);
echo $content[0]; //输出:abcabbbcabbbbbc;
//如果$mode="/a.*c/";变成$mode="/a.*c/U";
// 则只匹配最近一个字符串,输出:abc;
//修正符:e 配合函数preg_replace()使用,
可以把匹配来的字符串当作正则表达式执行;
?>
⑺ php正则表达式
这里涉及到正则表达式中得子串捕获的概念。php中的正则表达式使用的是pcre正则库,因此使用方式上和pcre是相同的,只不过是为了使用方便封装了一起便捷的操作而已。preg_match函数和preg_match_all函数用于在php中进行正则表达式的相关处理。下面看下preg_match函数的定义:intpreg_match(string$pattern,string$subject[,array&$matches])在$subject中查询$pattern,如果找到则把匹配的字符串存储在$matches中。$matches[0]中存放整个匹配的字符串,$matches[i]中存放匹配到的第i个捕获子串。题目的解决方法:$pattern="/^NAME(.*){$/";preg_match($pattern,$string,$match);echo$match[1];//$match[1]为提取的NAME和{之间的内容。关于捕获组信息($match的信息)详情,可以参考文档:http://wang
⑻ php 使用正则表达式是否具有优势和缺点
优点:
正则表达式可以处理比较复杂的文本数据处理如匹配、替换、分割,比着php中的原生字符串函数功能更强,比如处理url,处理文本,验证规则
缺点:
有强大的功能,但是处理速度比着原生字符串函数要慢
原则上能用原生的函数不用php中正则表达式
⑼ PHP正则表达式
'/^\s*{(\w+)}\s*=/' 代表“词首位置起或有空白{1个或以上的字母串(该串编号1)}或有空白”
替换成,'$\\1=' 含义是"$编号1的串="
⑽ php超实用正则表达式有哪些
php几个超实用正则表达式
1.验证域名检验一个字符串是否是个有效域名
2.从一个字符串中 突出某个单词
3.从HTML文档中获得全部图片
4.删除重复字母
5.删除重复的标点
6.匹配一个XML或者HTML标签
7.匹配具有属性值的XML或者HTML标签
8.匹配十六进制颜色值
9.查找页面 title
10.解释 Apache 日志
11.使用智能引号代替双引号
12.检验密码的复杂度
13.WordPress: 使用正则获得帖子上的图片
14.自动生成笑脸图案
15. 移除图片的链接