在php中关于正则是否匹配数组之解析来了

在PHP中正则能匹配数组吗?答案是肯定的。在php中,可以利用preg_grep()函数来使用正则表达式匹配数组中的元素;该函数可以搜索数组中的每一个元素,并返回与正则表达式匹配的所有元素所组成的数组,语法“preg_grep(正则表达式,数组,$flags)”;参数“$flags”是可选的,当值设置为“PREG_GREP_INVERT”,则会返回数组中与与正则表达式不匹配的元素组成的数组。


在php中关于正则是否匹配数组之解析来了


本文适用于windows7系统、PHP8.1版、DELL G3电脑


在php中关于正则是否匹配数组之解析来了


首先,答案是肯定的,正则可以匹配数组。我们可以利用preg_grep()函数来使用正则表达式匹配数组中的元素。


在php中,说到正则匹配就想到字符串。其实使用正则表达式除了可以匹配字符串外,还可以匹配数组。


preg_grep() 函数可以搜索数组中的所有元素,并返回与正则表达式匹配的所有元素所组成的数组。该函数的语法格式如下:


preg_grep($pattern, $input [, $flags = 0 ])


参数说明如下:


●  $pattern:要搜索的模式,也就是定义好的正则表达式;

●  $input:要搜索的数组;

●  $flags:可选参数,可以设置为 PREG_GREP_INVERT,这时函数会返回数组中与给定模式 $pattern 不匹配的元素组成的数组。


perg_grep() 函数将遍历 $input 数组中的每一个元素,让该元素与模式 $pattern 进行匹配,然后将匹配成功或者匹配失败的元素返回。


示例1:返回数组中指定匹配的元素


<?php
header('content-type:text/html;charset=utf-8');   
$array = array(1, 2, 3.4, 53, 7.9);
echo "原数组:";
var_dump($array);
 
// 返回所有包含浮点数的元素
$fl_array = preg_grep("/^(\d+)?\.\d+$/", $array);
echo "返回所有包含浮点数的元素:";
var_dump($fl_array);
?>


返回数组中指定匹配的元素


示例2:


<?php
header('content-type:text/html;charset=utf-8');   
$test_arr = array(
    'PHP中文网',
    'http://www.php.cn/',
    'php教程',
    'abcdefg'
);
$preg = '/^[a-z]/';
$preg_arr_1 = preg_grep($preg, $test_arr);
$preg_arr_2 = preg_grep($preg, $test_arr, PREG_GREP_INVERT);
echo '<pre>';
var_dump($preg_arr_1);
var_dump($preg_arr_2);
?>


示例代码

在php中关于正则是否匹配数组之解析到这里就讲解完毕了,翼速应用平台内有更多相关资讯,欢迎查阅!

我来说两句

0 条评论

推荐阅读

  • 响应式布局CSS媒体查询设备像素比介绍

    构建响应式网站布局最常见的是流体网格,灵活调整大小的站点布局技术,确保用户在使用的幕上获得完整的体验。响应式设计如何展示富媒体图像,可以通过以下几种方法。

    admin
  • 提升网站的性能快速加载的实用技巧

    网站速度很重要,快速加载的网站会带来更好的用户体验、更高的转化率、更多的参与度,而且在搜索引擎排名中也扮演重要角色,做SEO,网站硬件是起跑线,如果输在了起跑线,又怎么跟同行竞争。有许多方法可提升网站的性能,有一些技巧可以避免踩坑。

    admin
  • 织梦CMS TAG页找不到标签和实现彩色标签解决方法

    织梦cms是我们常见的网站程序系统的一款,在TAG标签中常常遇到的问题也很多。当我们点击 tags.php 页的某个标签的时候,有时会提示:“系统无此标签,可 能已经移除!” 但是我们检查程序后台,以及前台显示页面。这个标签确实存在,如果解决这个问题那?

    admin
  • HTML关于fieldset标签主要的作用

    在前端开发html页面中常用的标签很多,今天为大家带来的是关于HTML中fieldset标签主要的作用说明,根据技术分析HTML

    admin

精选专题