【正则怎样写才能匹配一组字符】教程文章相关的互联网学习教程文章

替换字符串中第N次出现的字符,不用正则表达式

比如有一个字符串:$a=hello world hello pig hello cat hello dog hello small boy; 然后想将第3次出现的hello 改变成为good-bye,比如: hello world hello pig good-bye cat hello dog hello small boy; 这样的情况,我一时半会没找到PHP的内置函数,而且在要求不能使用正则表达式的情况下,就编写了这个简易的小函数,如果大家有好的内置函数推荐,欢迎留言:) 转自PHP面试题: http://phpmst.com/ /* * $text是输入的文本;...

PHP正则表达式匹配字符的方法汇总

本文介绍下,php中用正则表达式匹配字符的方法,有需要朋友,参考学习下吧。1、字符 对于单个字符,通常按字面意义表示,字符指出其后的字符为特殊字符,所以不做字面意义解释,而解释为特殊字符。 例如/b/相当于字符b,通过在b前面加一个反斜杠,即为/#8;/,则该字符变成特殊字符,表示匹配一个单词的分界线。对于几个字符,通常说明是特殊的,符号指出其后的字符不是特殊的,而应按字面解释 2、字符* 表示匹配的字符必须在最前边。...

php正则判断字符串是否为域名的方法分享

本文介绍下,在php编程中,用正则表达式判断某一字符串是否为域名的方法,有需要的朋友参考下吧。通常匹配域名的格式要求: 1、域名中的标号都由英文字母和数字组成,每一个标号不超过63个字符,也不区分大小写字母。标号中除连字符(-)外不能使用其他的标点符号。 2、各级域名之间用实点(.)连接,三级域名的长度不能超过20个字符。 3、由多个标号组成的完整域名总共不超过255个字符。 匹配域名的正则: 1、由英文数字 和 “_”...

PHP正则匹配6到16位字符组合(且只能为数字、字母、下划线)

本文介绍下,使用php正则匹配6位16位的字符组合的方法,此正则要求只能为数字、字母与下划线。有需要的朋友参考下。要求: php正则匹配6到16位的字符串。 只允许包含数字、字母、下划线组成的6到16位字符,符合返回ture,否则返回false。 解答: 6到16位,正则可以这样写:{6,16}。 任意的字符6到16位的正则表达式是这样:.{6,16} 仅允许数字、字母、下划线的组合,正则为:[0-9_a-zA-Z]整合一下,完整的正则就是: ^[_0-9a-z]{6,1...

php正则匹配以“abc”开头且不能以“xyz”结尾的字符串

本文介绍下,用php正则区配以"abc"开头的,且不能以"xyz"结尾的字符串的方法,有需要的朋友参考下。要求: 用php正则表达式匹配以“abc”开头,但结尾不能包含“x”、“y”、“z”的字符串。 解析: abc开头,正则这样写:^abc。 以abc开头了,后面要有一串的字符串 一般用[^…………]这样来否定。 既然是否定“x”、“y”、“z”,就是[^xyz]了。完整的正则表达式就是这样: ^abc[^xyz]*$ 下面是使用此正则的完整php示例,如下:'...

PHP转义正则表达式字符的函数

$str = preg_quote( “ /\d{3}(\-\d{4})/ ” ); echo $str; ?>结果: /\\d\{3\}\(\\\-\\d\{4\}\)/ 例2,$str = preg_quote( “ /\d{3}(\-\d{4})/ ” , ” 3 “ ); echo $str; ?>结果: /\\d\{\3\}\(\\\-\\d\{4\}\)/ 以上二个示例的主要区别: 就是红色区域中的 “ 3 ” ,在第二个例子中将 “ 3 ” 也转义出了。

preg_match正则匹配字符串长度问题分析

ini_set(‘pcre.backtrack_limit’, 999999999); 注意:此参数在php 5.2.0版本之后可用。 关于:pcre.recursion_limit pcre.recursion_limit是pcre的递归限制,这个项如果设很大的值,会消耗所有进程的可用堆栈,最后导致php崩溃。 也可以通过修改配置来限制:ini_set(‘pcre.recursion_limit’, 99999);最好对内存进行限定设置:ini_set(‘memory_limit’, ’64m’); 。

php正则表达式转义字符的例子

$str = preg_quote( “ /\d{3}(\-\d{4})/ ” ); echo $str; ?> 结果: /\\d\{3\}\(\\\-\\d\{4\}\)/ 例2:$str = preg_quote( “ /\d{3}(\-\d{4})/ ” , ” 3 “ ); echo $str; ?> 结果: /\\d\{\3\}\(\\\-\\d\{4\}\)/ 这两个例子的区别: 就是红色区域中的 “ 3 ” ,在第二个例子中将 “ 3 ” 也转义出了。PHP转义字符函数 PHP转义正则表达式字符的函数 PHP表单POST传参数时自动加转义字符问题 php防注入与表单提交值转义...

php正则过滤html特殊字符

<?php$str=preg_replace("/\s+/", " ", $str); //过滤多余回车 $str=preg_replace("/<[ ]+/si","<",$str); //过滤<__("<"号后面带空格) $str=preg_replace("/<\!–.*?–>/si","",$str); //注释 $str=preg_replace("/<(\!.*?)>/si","",$str); //过滤DOCTYPE $str=preg_replace("/<(\/?html.*?)>/si","",$str); //过滤html标签 $str=preg_replace("/<(\/?br.*?)>/si","",$str); //过滤br标签 $str=preg_replace("/<(\/?head.*?)>/si"...

php正则过滤特殊字符的方法

本文介绍下php编程中正则过滤特殊字符的方法,有需要的朋友参考下。在php中用正则表达式过滤特殊字符,可以使用函数preg_quote: string preg_quote( string $str[, string $delimiter] ) 找出$str字符串中出现的属于正则表达式的特殊字符,并在改特殊字符前面加上一个反斜线。 可以提供一个可选的$delimiter字符串参数作为新增的转义字符集合。 正则表达式的特殊字符包括: . \ + * ? [ ^ ] $ ( ) { } = ! < > | : 。 string adds...

php正则不包含某字符串示例代码

本文介绍了php正则不包含某字符串的写法,正则表达式不包含指定的字符串的例子,有需要的朋友参考下。 在php编程中,匹配字符串的常见函数 strstr($str, “abc”); 正则匹配 preg_match(”/(abc)?/is”, $str); 但是要匹配一个字符串中,不包含某字符串,用正则就比较麻烦了 如果不用正则 !strstr($str, “abc”); 即可解决问题。 命名用正则可以这样: ”/^((?!abc).)*$/is” 例子:结果为:false,含有abc! $str = “2b3c4d5...

获取字符串中数字的正则表达式

<?php $patterns = "/\d+/"; //第一种 //$patterns = "/\d/"; //第二种 $strs="left:0px;top:202px;width:90px;height:30px"; preg_match_all($patterns,$strs,$arr); print_r($arr); /***************运行结果*********************/ //第一种Array( [0] => Array ( [0] => 0 [1] => 202 [2] => 90 [3] => 30 ))//第二种Array( [0] => Ar...

PHP一些常用的正则表达式字符的一些转换_PHP教程

匹配双字节字符(包括汉字在内): [^\x00-\xff]   应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1) String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;}   匹配空行的正则表达式: \n[\s| ]*\r   匹配HTML标记的正则表达式: /.*|/   匹配首尾空格的正则表达式: (^\s*)|(\s*$)   应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现...

PHP中用正则表达式清除字符串的空白_PHP教程

如果您想要去掉字符串开始和结束的空白可以使用PHP内部函数trim() 。但是, 我们经常想完全清除空白。需要把开始和结束的空白清除掉,将多个空白变为一个空白,使用一个规则来处理同样的类型的其它空白。 完成这些可以使用PHP的正则表达式来完成 下例可以去除额外Whitespace 代码如下:$str = " This line contains\tliberal \r\n use of whitespace.\n\n"; // First remove the leading/trailing whitespace //去掉开始和结束的空白...

PHP字符串正则替换函数preg_replace使用说明_PHP教程

1. preg_replace() $msg = preg_replace("/.+/is", "", $msg); -----删除和中间的部分 $msg = preg_replace("/]+>/", "", $msg); -----是删除i (PCRE_CASELESS) 如果设定此修正符,模式中的字符将同时匹配大小写字母。 s (PCRE_DOTALL) 如果设定了此修正符,模式中的圆点元字符(.)匹配所有的字符,包括换行符。没有此设定的话,则不包括换行符。这和 Perl 的 /s 修正符是等效的。排除字符类例如 [^a] 总是匹配换行符的,无论是否...