博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于正则表达式中^和$
阅读量:6874 次
发布时间:2019-06-26

本文共 2308 字,大约阅读时间需要 7 分钟。

^是正则表达式匹配字符串开始位置

$是正则表达式匹配字符串结束位置

很多人始终没搞清楚这是什么意思,这里用几个例子看下就一目了然了。

先搞清楚^匹配字符串开始位置(其实就是从字符串左边第一个字符开始匹配)

1 $str='http://blog.seetiny.com';2 $pattern='/^blog/';  /*因为/为特殊字符*/3 $str=preg_replace($pattern,'jimmy',$str);4 echo $str;die;

上面的输出是:

http://blog.seetiny.com/

改造一下:

1 $str='http://blog.seetiny.com';2 $pattern='/^http/';  /*因为/为特殊字符*/3 $str=preg_replace($pattern,'jimmy',$str);4 echo $str;die;

输出:

jimmy://blog.seetiny.com/

可以看到在已^开始的正则,只从左边第一个字符匹配,如果没匹配到,那整个匹配就是失败的

 

再看$匹配字符串的结束位置

1 $str='http://blog.seetiny.com';2 $pattern='/com$/';  /*因为/为特殊字符*/3 $str=preg_replace($pattern,'jimmy',$str);4 echo $str;die;

输出:

http://blog.seetiny.jimmy

再看一个例子

1 $str='http://blog.seetiny.com';2 $pattern='/iny$/';  /*因为/为特殊字符*/3 $str=preg_replace($pattern,'jimmy',$str);4 echo $str;die;

输出:

http://blog.seetiny.com

 

看看同时使用^和$是什么意思呢

1 $str='http://blog.seetiny.com';2 $pattern='/^iny$/';  /*因为/为特殊字符*/3 $str=preg_replace($pattern,'jimmy',$str);4 echo $str;die;

输出:

http://blog.seetiny.com

改成

1 $str='http://blog.seetiny.com';2 $pattern='/^http:\/\/blog.seetiny.com$/';  /*因为/为特殊字符*/3 $str=preg_replace($pattern,'jimmy',$str);4 echo $str;die;

输出:

jimmy

结合例子看,用法就一目了然了,^和$用处非常多,常见的就是使用sublime编辑给每行文本开始和技术加引号,括号逗号什么的,非常方便

例如有一堆字符串要写SQL插入到数据库

1 85353001071 2 85353001071 3 85959001280 4 81106513888 5 81106513888 6 81106513888 7 81106513888 8 81106514054 9 8110651405410 81106405611 8110651405612 8110651413213 8110651413214 8110651413615 8110651413616 8110651413717 81106513718 8110651413819 8110651413820 8110651413921 811065141391312322 8303000007623 8303000007624 8303000009625 8303000009626 8303000031612327 8303000048328 83030000485429 8303000048930 8303000053331 8303000132332 83030000610

通过sublime非常简单的就能处理成下面的样子

1 ("85353001071", 2 "85353001071", 3 "85959001280", 4 "81106513888", 5 "81106513888", 6 "81106513888", 7 "81106513888", 8 "81106514054", 9 "81106514054",10 "811064056",11 "81106514056",12 "81106514132",13 "81106514132",14 "81106514136",15 "81106514136",16 "81106514137",17 "811065137",18 "81106514138",19 "81106514138",20 "81106514139",21 "8110651413913123",22 "83030000076",23 "83030000076",24 "83030000096",25 "83030000096",26 "83030000316123",27 "83030000483",28 "830300004854",29 "83030000489",30 "83030000533",31 "83030001323",32 "83030000610")

 

转载于:https://www.cnblogs.com/JimmyBright/p/7205851.html

你可能感兴趣的文章
解决walle报错:宿主机代码检出检测出错,请确认svn用户名密码无误
查看>>
实现IBatisNet的Dialect分页
查看>>
基础算法之选择排序
查看>>
使用FastDFS在CentOS上搭建简易分布式文件系统
查看>>
一致性哈希算法介绍,及java实现
查看>>
WCF 第二章 契约 异步访问服务操作
查看>>
ArcGIS Server GP服务发布与测试(基础版)
查看>>
程序猿媳妇儿注意事项 (转载)
查看>>
微信发送模版消息,PHP代码简单案例
查看>>
转载: 华为内部Web安全测试原则
查看>>
Vue中的button事件
查看>>
FPGA开发(3)
查看>>
随笔:估算程序算法复杂度的理解
查看>>
node的系统核心模块实现服务器功能、用nodejs做动态网站(后端渲染)
查看>>
SQL常识
查看>>
周总结
查看>>
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
查看>>
获取当前日期格式:YYYY-MM-DD
查看>>
ham 无线电笔记
查看>>
函数的嵌套调用
查看>>