PHP中与Perl兼容的正则表达式处理函数

给排水工程师的SWMM初体验:从软件界面到第一个简单模型的保姆级上手教程 本文为给排水工程师提供SWMM软件的保姆级上手教程,从界面解析到创建第一个简单模型,详细介绍了SWMM的核心功能和操作步骤。通过30分钟的实践指导,帮助新手快速掌握雨水管网建模的基本技能,提升工作效率。 阅读详情
在PHP中给我们提供两套正则表达式函数,POSIX 扩展正则表达式函数(ereg_)和Perl 兼容正则表达式函数(preg_),这两个函数功能一样,Perl 兼容正则表达式函数库效率高, 这里和这符串处理函数对比介绍,能使用字符串处理函数完成的功能,就不要使用正则表达式处理函数

1. 字符串的匹配与查找
字符串处理函数

strstr(a,b)

返回a 字符串从b 第一次出现的位置开始到a 结尾的字符串。

<span style="font-size:18px;">$a='visit';
$b='US President Barack Obama is in Cuba from March 20 to 22 for a historic visit to the island, reported China Daily.';
$c=strstr($b,$a);
echo $c; //visit to the island, reported China Daily.</span>

strpos(a,b)  

返回a 字符串从b 第一次出现的位置开始到a 结尾的位置,不存在返回false

<span style="font-size:18px;">$a='visit';
$b='Cuba visit part of Obama’s legacy.';
$c=strpos($b,$a);
if ($c!==false){
    echo "在'$b'中存在'$a'";
}else{
    echo "在'$b'中不存在'$a'";
}
</span>
preg_match(a,b,c)

执行一个正则表达式匹配

以正则a验证字符串b,c是搜素结果

<span style="font-size:18px;">$pattern="/\Bis\b/";  //正则表达式模式
$string="this is a island";  //需要匹配的字符串
if (preg_match($pattern,$string)){
    echo '匹配成功!';
}else{
    echo '匹配失败!';
}  //匹配成功</span>

2.字符串替换

     str_replace(a,b,c)

     在c中用b替换a

     str_ireplace()  不区分大小写

a. str_replace(string, string, string)

<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$a='No pains, no gains.';
$b='yes';
echo (str_ireplace('no',$b,$a));//yes pains, yes gains.</span>

b. str_replace(array, string, string)

    可以用于屏蔽非法关键字

<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$a='Keep good men company and you shall beof the number.';
$b=array('men','you','the');
$c='**';
echo (str_ireplace($b,$c,$a)); //Keep good ** company and ** shall beof ** number.</span>

c. str_replace(array, array, string)

   批量替换

<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$a='Keep good men company and you shall beof the number.';
$b=array('men','you','the');
$c=array('MEN','YOU','THE');
echo (str_ireplace($b,$c,$a));//Keep good MEN company and YOU shall beof THE number.</span>

preg_replace()  正则中替换函数
     1. 正常使用  preg_replace('string', 'string', 'stirng');
     2. 在正则中的子模式,可以用到二个参数中
     3. 在第二个参数中调用函数, 需要在模式中使用 e 模式修正符号
     4. 就是在前两个参数中都使用数组, 可以一起将多个模式(正则)同时替换成多个值的形式

3、字符串分割
explode

    按某个字符或字符串去分割   

<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$a='Keep good men company and you shall beof the number.';
print_r (explode(' ',$a)); //Array(    [0] => Keep    [1] => good    [2] => men    [3] => company    [4] => and    [5] => you    [6] => shall    [7] => beof    [8] => the    [9] => number.)</span>


preg_split

按一个正则的模式去分割

<span style="font-size:18px;"><?php
header("Content-Type: text/html; charset=UTF-8");
$a='A faithful friend is hard to find.';
//print_r (explode(' ',$a));
print_r(preg_split('/[\s]+/',$a));//Array(    [0] => A    [1] => faithful    [2] => friend    [3] => is    [4] => hard    [5] => to    [6] => find.)</span>

 
GEE必须会教程——一文教会你研究区域分块计算与合并 一整块算不是挺好的吗?emmmm,用过的人都知道,GEE好比幼年期的“紫妍”,要用“丹药”来养的,除非你是萧炎小友,到哪都有人给爆金币。我们今天想做的是计算2020年夏季西藏自治区的植被覆盖度(FVC),FVC的估算需要使用归一化植被指数(NDVI数据),这里我们用到的产品是MODIS的相关数据产品,该产品的分辨率是25 0m。下载好的结果毕竟是一块一块的,怎么对下载好的结果进行拼接,变成一张大图呢,别急,接下来,我们上科研小霸王——R语言。此处,我们通过省份数据,按照属性筛选,得到西藏自治区的行政边界。 阅读详情

相关推荐

【YOLOv7-环境搭建】PyTorch安装后输出版本显示No module named ‘Torch’的解决方法

【YOLOv7-环境搭建】PyTorch安装后输出版本显示No module named ‘Torch’的解决方法:①检查PyCharm导入的环境是否错误②添加Torch包

qq_59942266的博客 4970

python perl 正则_Python中的Perl兼容正则表达式(PCRE)

特别注意Python中的非ASCIIPython在模式和字符串中如何处理或未能处理非ASCII存在一些非常微妙的问题。更糟糕的是,这些差异很大程度上取决于您使用的Python版本,还取决于您是否有一个“广泛的构建”。一般来说,在进行Unicode工作时,具有宽构建的Python 3工作得最好,而具有窄构建的Python 2工作得最差,但是所有的组合与Perl regex相对于Unicode的工作方...

weixin_39969881的博客 507

FPGA实战:手把手教你实现VESA DSC编码(附Verilog代码解析)

本文详细介绍了如何使用FPGA实现VESA DSC编码器,包括核心架构设计、Verilog代码实现与优化技巧。通过流水线设计、色彩空间转换和预测编码等关键技术,帮助开发者掌握工业级DSC编码器的开发流程,并提供实用的调试与性能优化方法。

weixin_29165725的博客 404

与Perl兼容的正则表达式函数

正则表达式不能独立使用,它只是一种用来定义字符串的规则模式,必须在相应的正则表达式函数中应用,才能实现对字符串的匹配、查找、替换及分割等操作。前面也介绍过在PHP中有两套正则表达式函数库,而使用与Perl兼容的正则表达式函数库的执行效率要略占优势,所以在本书中主要介绍以“preg_”开头的正则表达式函数。另外,在处理大量信息时,正则表达式函数会使速度大幅减慢,应当只在需要使用正则表达式解析比较复杂...

weixin_30701521的博客 235

echarts 生成中国陕西省份(或其他省份)的地图,大屏使用

效果图: 一、首先第一步需要下载echarts和获取到陕西身份的地图信息。 1.下载echarts链接(官网): Apache ECharts 2.生成指定省份的地图数据信息,数据可以在阿里云获取。 DataV.GeoAtlas地理小工具系列 如图,点击左圈需要的省份,这里我选择的是陕西省,然后点击右圈复制下载链接,得到一个json格式的数据,可以在json转换网站转成js格式。 Json在线解析格式化-Json在线校验Json格式化压缩-Jsons在线工具 转成js格.

PrimaryColor 3889

当Flowable遇上AI:智能流程决策的未来探索

本文探讨了Flowable工作流引擎与AI技术的融合,构建智能流程决策系统的前沿实践。通过动态流程控制、机器学习优化表达式、自然语言生成规则等创新方法,显著提升业务流程的自动化水平和决策效率。重点解析了AI如何赋能Flowable核心引擎,实现从静态规则到动态智能的跨越式发展。

weixin_29271053的博客 392

模式语法 — 解说 Perl 兼容正则表达式的语法

Differences From Perl PCRE 函数 PCRE Patterns PHP 手册 模式语法 (No version information available, might only be in SVN) 模式语法 — 解说 P

jiangfeng08的专栏 2177

远程桌面报‘数据加密错误‘?可能是网卡设置惹的祸(附TCP校验关闭教程)

本文深入分析远程桌面连接中出现的'数据加密错误'问题,指出网卡设置可能是根本原因,并提供详细的TCP校验关闭教程。通过禁用网卡高级属性中的'TCP校验和IPv4'与'IPv4承载卸载'功能,可有效解决RDP协议与硬件加速的兼容性问题,适用于Windows和Linux系统。

view3的博客 276

14. Perl 正则表达式-正则匹配

正则表达式(regular expression) 在Perl 里面通常也叫模式(Pattern). 正则表达式是用来匹配或不匹配某个字符串是否符合特定字符串模板的,也可以实现字符串的替换. 1. 正则匹配语法 Perl 的正则表达式语法非常灵活, 可以借助于内置变量$_ 进行简化, 也可以借助于m符号来自定义匹配定界符. 1.1 简写方式 简写模式使用内置变量$_与模式进行匹配. 标准模式无须...

Java 程序源 9703

【保姆级教程】基于UNet++&MobileNetv2的语义分割模型从训练到RK3588部署:让边缘AI落地效率提升300%

通过SMP库一键构建encoder_name="mobilenet_v2", # 选择MobileNetv2作为骨干encoder_weights="imagenet", # 加载预训练权重加速收敛in_channels=3, # 输入图像通道数(RGB)classes=29, # Cityscapes数据集类别数activation=None # 输出无激活,便于后续损失计算本教程从“模型设计-训练-转换-边缘部署”全链路拆解了。

FJN110的博客 210

Simulink中搭建一个包含PID控制的压电陶瓷快反镜模型

这个模型只是一个基本框架,你需要根据实际的系统参数和要求进行调整和优化。希望这些步骤能帮助你在Simulink中搭建所需的模型。

AI的内部世界的博客 474

PHP学习笔记:PERL兼容正则表达式

<br />PERL兼容正则可以使用任何不是字母、数字或反斜线(/)的字符作为定界符,如果作为定界符的字符必须被用在表达式本身中,则需要用反斜线转义。也可以使用(),{},[] 和 <> 作为定界符<br /> <br />模式修正符:修正符中的空格和换行被忽略,其它字符会导致错误。<br />i 如果设定此修正符,模式中的字符将同时匹配大小写字母。<br />m 当设定了此修正符,行起始(^)和行结束($)除了匹配整个字符串开头和结束外,还分别匹配其中的换行符(/n)的之后和之前。<br />s 如果设定

LAMP随记 658

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

php正则取文件名_PHP正则表达式

1. 正则表达式就是描述字符串排列模式的一种自定义语法规则。2. 如果可以使用字符串处理函数完成的任务,就不要使用正则3. 有一些复杂的操作,只能使用正则完成。正则表达式可以在很多计算机语言中应用4. 正则表达式也称为一种模式表达式。5.正则表达式就是通过构建具有特定规则的模式,与输入的字符信息比较。再进行分割、匹配、查找、替换等工作 * "//" * * 一、正则表达式也是一个字符串 * 二、由...

weixin_39684454的博客 550

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

php正则匹配js中变量_PHP正则表达式核心技术 第4节 php查找匹配函数使用心得

作者:极客小俊一个专注于web技术的80后你不用拼过聪明人,你只需要拼过那些懒人 你就一定会超越大部分人!php中兼容Perl的正则表达式处理函数在我们说php系统自带的正则处理函数之前,我们先要回忆一下在PHP中正则表达式的组成元素有哪些? 如下:定界符号原子元字符、量词模式修正符例如:一个匹配URL的正则表达式如下$url="/(https?|ftps?)://(www|mail|news)...

weixin_39602569的博客 274

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

细说PHP(九)

第9章 正则表达式9.1 正则表达式简介9.1.1 选择PHP正则表达式的处理函数库9.2正则表达式的语法规则9.2.1 定界符9.2.2 原子9.2.3 元字符9.2.4 模式修正符9.3 与Perl兼容的正则表达式函数 9.1 正则表达式简介 9.1.1 选择PHP正则表达式的处理函数库 preg_match() //进行正则表达式匹配 preg_match_all() //进行全局正则表达式匹配 preg_replace() //执行正则表达式的搜索和替换 preg_split(

YUKIDDDD的博客 176

PHP09 字符串和正则表达式

学习要点 字符串处理简介 常用的字符串输出函数 常用的字符串格式化函数 字符串比较函数 正则表达式简介 正则表达式语法规则 与perl兼容的正则表达式函数 字符串处理介绍 Web开发中字符串处理的工作量大概占到30%左右。原因是web系统客户端和服务器之间传输的数据格式基本上都是字符串。 字符串的处理方式 PHP中的字符串是一种基本数据类型 默认只支持2...

weixin_30677617的博客 142

php中pregmatch,php小经验:解析preg_match与preg_match_all 函数

正则表达式在 PHP 中的应用在 PHP 应用中,正则表达式主要用于:•正则匹配:根据正则表达式匹配相应的内容•正则替换:根据正则表达式匹配内容并替换•正则分割:根据正则表达式分割字符串在 PHP 中有两类正则表达式函数,一类是 Perl 兼容正则表达式函数,一类是 POSIX 扩展正则表达式函数。二者差别不大,而且推荐使用Perl 兼容正则表达式函数,因此下文都是以 Perl 兼容正则表达式函数...

weixin_35683330的博客 691

php正则表达式

正则表达式 与Perl语言兼容的正则表达式处理函数 函数名 功能描述 preg_match() 进行正则表达式匹配 preg_match_all() 进行全局正则表达式匹配 preg_replace() 执行正则表达式的搜索和替换 preg_split() 用正则表达式分割字符串 preg_grep() 返回与模式匹配的数组单元 preg_replace_callback() 用回调函数执行正则表达式的搜索和替换 正则表达式的语法规则

duoduowangjia的博客 274

百度云盘云知梦php_云知梦PHP笔记(三)未完待续

20.php的执行过程加载页面,语法检测(加载函数),执行脚本21.php数组数组是由多个元素组成,每个元素由key-value,value有八种数据类型索引数组和关联数组的混合使用,关联数组的使用不影响索引数组的下标例如:$arr = array("name" => 1, 2, 3, 100 => 4, 5, "age" =>6),它们的下标打印为"name", 0, 1, 1...

weixin_42470300的博客 224

正则表达式(Perl语法风格)

正则表达式是一种描述字符串排列的一种语法规则,通过该规则可以在一个大字符串中匹配出满足规则的子字符串。我们在程序的开发过程中,经常会遇到去对一类字符串进行处理的情况,比如在一堆字符串中查找是否含有邮箱,电话、手机号等。我们怎么描述匹配这些像邮箱、手机号等一类的字符串呢?这就要用到正则表达式。正则表达式不是PHP自己的东西,在JavaScript、Perl、Java等其他语言中也有可以使用。 PH...

weixin_43091501的博客 3079

不能为空的正则表达式_PHP正则表达式

1. 正则表达式就是描述字符串排列模式的一种自定义语法规则。2. 如果可以使用字符串处理函数完成的任务,就不要使用正则3. 有一些复杂的操作,只能使用正则完成。正则表达式可以在很多计算机语言中应用4. 正则表达式也称为一种模式表达式。5.正则表达式就是通过构建具有特定规则的模式,与输入的字符信息比较。再进行分割、匹配、查找、替换等工作 * "//" * * 一、正则表达式也是一个字符串 * 二、由...

weixin_30851637的博客 2804

PHP 正则表达式匹配 preg_match 与 preg_match_all 函数

正则表达式在 PHP 中的应用 在 PHP 应用中,正则表达式主要用于: 正则匹配:根据正则表达式匹配相应的内容正则替换:根据正则表达式匹配内容并替换正则分割:根据正则表达式分割字符串 在 PHP 中有两类正则表达式函数,一类是 Perl 兼容正则表达式函数,一类是 POSIX 扩展正则表达式函数。二者差别不大,而且推荐使用Perl 兼容正则表达式函数,因此下文都是以 Perl

u013487017的博客 421

正则表达式的用法 php,PHP中的正则表达式的使用

PHP中的正则表达式基础知识1.正则表达式就是描述字符串排列模式的一种自定义语法规则2.如果可以使用字符串处理函数完成的任务,就不使用正则表达式3.有一些复杂的操作,只能使用正则表达式完成4.正则表达式也称为一种模式表达式5.正则表达式就是通过构建具有特定规则的模式,与输入的字符信息比较,在进行分割、匹配、查找、替换等工作 例:"/\/"a.正则表达式也是一个字符串b.由具有特殊意义的字符串...

weixin_33732812的博客 233

PHP正则表达式

正则表达式可以单独使用的字符, 就是原子。正则表达式是一串字符串, 由含有特殊意义的字符组成, 可以看做一种语言, 只有在函数中使用才能发挥作用。可以使用函数处理就不要使用正则表达式, 正则表达式的效率比函数低, 主要用于处理复杂字符串。如果能使用字符串处理函数处理的, 就不要用正则, 因为字符串处理函数的效率比正则稍高。“/” 是开始和结束的符号, 除了字母、数字、“” 以外的任意字符都可以是定界符。/ 原子和元字符 /模式修正符。在定界符号之外使用的特殊字符。

浅时光 1689

正则表达式笔记

五、反向引用, 可以在模式中直接将子模式取出来,再作为正则表达式模式的一部分, 如果是在正则表达式像替换函数preg_replace函数中, 可以将子模式取出, 在被替换的字符串中使用。\W : 表示任意一个非字, 除了a-zA-Z0-9_以外的任意一个字符 [^a-zA-Z0-9_]\s : 表示任意一个空白字符,空格、\n\r\t\f [\n\r\t\f ]

ay091431的博客 873

PHP高级特性一之正则表达式用法

在PHP中,我们进行字符串处理时,能用字符串处理函数时我们当然要使用简单的字符串处理函数,但字符串处理函数的能力是有限的,所以我们就需要利用一个更强大的工具,那就是正则表达式。 简述正则表达式 正则表达式是什么? 正则表达式就是描述字符串排列模式的一种自定义语法规则。正则表达式就是通过构建具有特定规则的模式,和输入字符串信息进行比较,然后进行分割、匹配、查找、替换等等的...

dinghe2119的博客 239
上一篇: 常用正则表达式
下一篇: PHP文件操作之文件的类型和属性
wyphp
博客等级 码龄11年 1粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值