首页 » 网站推广 » explodephp正则技巧_phpphp正则表达常用函数的总结代码示例

explodephp正则技巧_phpphp正则表达常用函数的总结代码示例

访客 2024-12-01 0

扫一扫用手机浏览

文章目录 [+]

php中常用的正则表达式函数

preg_match()

explodephp正则技巧_phpphp正则表达常用函数的总结代码示例 explodephp正则技巧_phpphp正则表达常用函数的总结代码示例 网站推广

preg_match_all()

explodephp正则技巧_phpphp正则表达常用函数的总结代码示例 explodephp正则技巧_phpphp正则表达常用函数的总结代码示例 网站推广
(图片来自网络侵删)

preg_replace()

preg_filter()

preg_grep()

preg_split()

preg_quote()

接下来比拟讲解:

讲解中 $pattern 常日正则表达式 $subject 常日表示目标处理数据

定义一个方法 方便查看数据类型:

function show($val = null){

if(empty($val)){

//打印空

echo 'mull';

}elseif(is_array($val) || is_object($val)){

//打印数组或者工具

echo '<pre>';

print_r($val);

echo '</pre>';

}else{

//打印string int float

echo $val;

}

}

preg_match()与preg_match_all()

/方法大略解释/

preg_match($pattern,$subject,[array &$matches])

//匹配一次 第三个参数可选 匹配结果放置matches数组

preg_match_all($pattern,$subject,array &matches)

//匹配多次 三参必选 匹配结果放置matches数组

$pattern = '/[0-9]/';

$subject='b5fg4sgf3sd2f1g';

$m1 =preg_match($pattern,$subject,$arr1);

show($m1);

show($arr1);

/

1

Array

(

[0] => 5

)

/

$m2 =preg_match_all($pattern,$subject,$arr2);

show($m2);

show($arr2);

/

5

Array

(

[0] => Array

(

[0] => 5

[1] => 4

[2] => 3

[3] => 2

[4] => 1

)

)

/

2.preg_replace()与preg_filter()

/方法大略解释/

/

preg_replace与preg_filter

preg_replace($pattern,$replacement,$subject)

//正则更换函数被更换工具是数组 返回全部

//正则更换函数 被更换工具是数组 仅返回被更换元素

遐想:str_repalce()

echo str_replace(\"大众world\"大众,\"大众Shanghai\公众,\"大众Hello world!\"大众);

//得到Hello Shanghai!

//第一测 字符串中更换字符串 结论:此处preg_replace()与preg_filter()无差异

$pattern = '/[0-9]/';

$subject='b65fg4sgf3sd2f1g';

$replacement = '_';

$str1 = preg_replace($pattern,$replacement,$subject);

$str2 = preg_filter($pattern,$replacement,$subject);

echo '<hr>';

show($str1);

echo '<br>';

show($str2);

/

b__fg_sgf_sd_f_g

b__fg_sgf_sd_f_g

/

//第二测 字符串中根据数组正则 更换 结论:此处preg_replace()与preg_filter()无差异

$pattern = array('/[123]/','/[456]/','/[789]/');

$subject='b123fg3456sgf3789f1g';

$replacement = array('天','地','人');

$str3 = preg_replace($pattern,$replacement,$subject);

$str4 = preg_filter($pattern,$replacement,$subject);

echo '<hr>';

show($str3);

echo '<br>';

show($str4);

/

b每天天fg天地地地sgf天大家人f天g

b每天天fg天地地地sgf天大家人f天g

/

//第三测 数组中根据数组正则 更换 结论:此处展示preg_repalce()与preg_filter()差异

$pattern = array('/[123]/','/[456]/','/[789]/');

$subject=array('b','fg3','456','sgf','789','fg');

$replacement = array('天','地','人');

$str5 = preg_replace($pattern,$replacement,$subject);

$str6 = preg_filter($pattern,$replacement,$subject);

echo '<hr>';

show($str5);

echo '<br>';

show($str6);

/

Array

(

[0] => b

[1] => fg天

[2] => 地地地

[3] => sgf

[4] => 大家人

[5] => fg

)

Array

(

[1] => fg天

[2] => 地地地

[4] => 大家人

)

/

3 . preg_grep($pattern, array $subject) //此处$subject只可以为一维数组

/函数解释/

preg_grep($pattern,array $input)//只可以匹配一维数组 返回匹配成功的数组元素

可以理解preg_grep()为阉割版 preg_filter()

只做了匹配 不作更换

$pattern = '/[0-9]/';

$subject=array('b','fg3','456','sgf','789','fg');

$arr = preg_grep($pattern,$subject);

show($arr);

/

Array

(

[1] => fg3

[2] => 456

[4] => 789

)

/

4 . preg_split($pattern,$subject)//一匹配成功为切割点切割字符串成数组

可以理解preg_split()升级版的explode()

$pattern = '/[0-9]/';

$subject='bfg3456sgf789fg';

$arr = preg_split($pattern,$subject);

show($arr);

/

Array

(

[0] => bfg

[1] =>

[2] =>

[3] =>

[4] => sgf

[5] =>

[6] =>

[7] => fg

)

/

5 . preg_quote($str) 正则运算符转译

/

preg_quote($str) 正则运算符转译

. \ + ? [ ^ ] $ () {} = ! < > | : -

/

echo '<hr>';

$str = \"大众qewr{asdf}[123]\公众;

$str =preg_quote($str);

print_r($str);

/

qewr\{asdf\}\[123\]

/

大略总结通性:

preg_ 开头

除preg_quote函数以外,第一个参数都是正则表达式

preg_match 表单验证等

preg_replace 造孽词语过滤等

标签:

相关文章

PHP必应翻译技巧_翻译接口整理

由于个人须要将中文翻译成英文,以是开始对翻译接口有了兴趣!于是整理下常用的五个翻译接口包括谷歌、百度、有道、必应、金山词霸,经由研...

网站推广 2024-12-05 阅读0 评论0

免费设计图网站,创意无限,设计无忧

随着互联网技术的飞速发展,越来越多的设计图网站如雨后春笋般涌现。在这些网站中,免费设计图网站凭借其丰富的资源、便捷的操作和优质的服...

网站推广 2024-12-05 阅读0 评论0

免费搭建微网站,轻松开启线上营销新时代

随着互联网的飞速发展,线上营销已经成为企业推广产品、提升品牌知名度的重要手段。在这个信息爆炸的时代,如何利用有限的资源,搭建一个既...

网站推广 2024-12-05 阅读0 评论0

免费设计网站,互联网时代创意无价的宝藏

随着互联网技术的飞速发展,我们的生活已经离不开网络。在这个信息爆炸的时代,网站成为了人们获取信息、展示自我、拓展业务的重要平台。对...

网站推广 2024-12-05 阅读0 评论0

免费设计网站i,开启创意设计之旅的新起点

随着互联网的普及,越来越多的设计网站应运而生,为广大设计爱好者提供了丰富的设计资源和交流平台。在这些网站中,免费设计网站i以其独特...

网站推广 2024-12-05 阅读0 评论0