正則表達式中^和$


^是正則表達式匹配字符串開始位置

$是正則表達式匹配字符串結束位置

很多人始終沒搞清楚這是什么意思,這里用幾個例子看下就一目了然了。

先搞清楚^匹配字符串開始位置(其實就是從字符串左邊第一個字符開始匹配)

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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM