了解php正則怎樣實現(xiàn)全部替換字符串?這個問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!
創(chuàng)新互聯(lián)建站服務(wù)項目包括湖濱網(wǎng)站建設(shè)、湖濱網(wǎng)站制作、湖濱網(wǎng)頁制作以及湖濱網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,湖濱網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到湖濱省份的部分城市,未來相信會繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
php正則全部替換字符串的實現(xiàn)方法:首先用preg_match()函數(shù)匹配所有字符串;然后遍歷數(shù)組;接著用strpos函數(shù)計算位置;最后用substr_replace函數(shù)替換指定位置的字符串即可。
php 替換 字符串中的 多個 不同字符
有兩個函數(shù)可以替換字符串
思路是用preg_match()函數(shù)先匹配所有字符串 遍歷數(shù)組 strpos()計算位置 用substr_replace()來替換指定位置的字符串。
例如:替換一個html頁面中的所有a標(biāo)簽
function getAarr($str){ //拿出網(wǎng)頁中所有a標(biāo)簽放到數(shù)組 $reg1="/<a[\s\S]*?>[\s\S]*?<\/a>/"; $aarray = array();//這個存放的就是正則匹配出來的所有《a》標(biāo)簽數(shù)組 preg_match_all($reg1,$str,$aarray); return $aarray[0]; } function replace($sou_str,$urls){ $arr_a = getAarr($sou_str); shuffle($urls); foreach($arr_a as $i=> $one){ $begin = strpos($sou_str,$one);//開始位置 $length = strlen($one);//字符串長度 if(!isset($urls[$i])){ $urls[$i]['name'] = str_replace(" ","",strip_tags($one)); $urls[$i]['url'] = "./?".$urls[$i]['name']; $urls[$i] = "<a target='_blank' href='".$urls[$i]['url']."' title='".$urls[$i]['name']."'>".$urls[$i]['name']."</a>"; }else{ $urls[$i] = "<a target='_blank' href='".$urls[$i]['url']."' title='".$urls[$i]['name']."'>".$urls[$i]['name']."</a>"; } if ($begin!==false){ $sou_str = substr_replace($sou_str,$urls[$i],$begin,$length); } } return $sou_str; }
感謝各位的閱讀!看完上述內(nèi)容,你們對php正則怎樣實現(xiàn)全部替換字符串大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)頁題目:php正則怎樣實現(xiàn)全部替換字符串
文章分享:http://www.rwnh.cn/article28/pcopjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、靜態(tài)網(wǎng)站、微信小程序、電子商務(wù)、網(wǎng)站改版、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)