php正則表達式字元串替換字元
『壹』 php正則如何匹配替換這樣的代碼
下面是代碼,不懂的加我的QQ245065587
<?php
$str = ',1。,2。,3。'; //要進行正則替換的字元串
$regular = "/,(.*)。,(.*)。,(.*)。/i"; //利用正則表達式反向引用取得相關數
$replacecode = "<a href=\"xx.com/$1\">$1</a> <a href=\"xx.com/$2\">$2</a> <a href=\"xx.com/$3\">$3</a>"; //返回的代碼
echo preg_replace($regular, $replacecode, $str); //處理替換,並輸出
?>
『貳』 php 替換指定字元串中,兩個字元串之間(包括這兩個字元串)之間的內容
這類替換最好不好使用正則表達式,因為你搜索的內容的唯一的無需使用正在,而且替換的文本較大正則效率太低。
方法是找到這兩個特殊字元串的位置,然後使用substr刪除中間部分,例子代碼:
$str='....你要處理的字元串.....';
$s1='...開始字元串...';
$s2='...結束字元串...';
$i1=strpos($str,$s1);//開始位置
$i2=strpos($str,$s2);//結束位置
if ($i1!==false && $i2!==false)//找到
$str=substr($str,0,$i1-1) . substr($str,$i2+strlen($s2));
『叄』 php正則表達式把西文雙引號替換成中文雙引號
我來解釋下2樓的代碼, preg_replace的第一個參數的正則,第二個參數是替換結果,第三個參數是要替換的字元串。
第一個參數'/"([^"]*)"/'的意思是匹配成對出現的雙引號內容,()代表引用,[^"]*代表引號內的內容,也就是一個不包含"的任意長度的字元串。
第二個參數'「${1}」'中的${1}使用了第一個參數中的第一個引用,也就是雙引號內的內容,所以第二個參數的意思就是將第一個參數的正則匹配到的英文雙引號內的內容放到了中文雙引號中。
解釋完畢。
『肆』 PHP 正則表達式替換字元
$str="{235大吉大利abc}";
$str=preg_replace("/[a-z,A-Z,0-9]/","*",$str);//替換所有字母和數字為*
echo$str;
『伍』 如何用php替換特殊字元及之後的字元串。例如$url中間有空格,我想去掉空格及空格後面的內容
任務:刪除字元串空格及其之後的所有內容
方法一:用正則表達式,正則模式為/[\s+].*$/,示例語句:
echo preg_replace('/[\s].*$/', '', $url);
方法二,使用substr,示例語句:
echo substr($url, 0, strpos($url,' '));
『陸』 PHP正則表達式如何替換像這樣的案例的
這個用正則表達式替換是比較簡單的,因為有分隔符/,所以把分隔符後面的都替換掉就行了.
<?php
$str="龍門飛甲/龍門飛甲電視劇版";
$regex="~/.*?$~";
echo preg_replace($regex,"",$str);
?>
『柒』 php 正則表達式匹配一個字元串的多個值 然後逐一替換掉裡面的 不全部替換成一個
舉個例子給你看看是不是你想要的。
有個字元串「abcadeafg」,把其中的三個字母a分別替換成x,y,z:
$pattern=array('/a/','/a/','/a/');
$replacement=array('x','y','z');
$subject='abcadeafg';
$res=preg_replace($pattern,$replacement,$subject,1);
echo$res;//xbcydezfg