正则表达式中^和$
^是正则表达式匹配字符串开始位置
$是正则表达式匹配字符串结束位置
很多人始终没搞清楚这是什么意思,这里用几个例子看下就一目了然了。
先搞清楚^匹配字符串开始位置(其实就是从字符串左边第一个字符开始匹配)
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
https://www.cnblogs.com/JimmyBright/p/7205851.html
本博客是个人工作中记录,更深层次的问题可以提供有偿技术支持。
另外建了几个QQ技术群:
2、全栈技术群:616945527
2、硬件嵌入式开发: 75764412
3、Go语言交流群:9924600
闲置域名WWW.EXAI.CN (超级人工智能)出售。
另外建了几个QQ技术群:
2、全栈技术群:616945527
2、硬件嵌入式开发: 75764412
3、Go语言交流群:9924600
闲置域名WWW.EXAI.CN (超级人工智能)出售。