2015-06-08 41 views
-3

我有這樣的文字更改URL到文本:如何選擇和使用的preg_replace

Tapez ici le message que vous souhaitez envoyer à vos clients http://go.tanger.fr/m/125 

我已經創建了一個正則表達式來選擇鏈接:

/(http(s)?:\/\/go.tanger.fr\/m\/)(\d+)/i 

我想改變該鏈接看起來像這樣:

http://go.tanger.fr/m/125?id=xxx 
+0

這從我的服務器ID那我應該添加到我的鏈接 – Mohammadov

+1

難道你沒有混淆輸入和輸出嗎?你的正則表達式用於匹配一些不同的鏈接類型。 –

+0

所以你有'http:// go.tanger.fr/m/125'並且想要轉到'http://go.tanger.fr/m/125?id = xxx'?你想在你的網頁源代碼或重寫/重定向(漂亮的網址)做到這一點? – chris85

回答

0

它看起來像你只是想用最後一個數字作爲查詢字符串。

您可以

$re = "#(https?):\/\/go\.tanger\.fr\/m\/(\d+)#i"; 
$str = "Tapez ici le message que vous souhaitez envoyer à vos clients https://go.tanger.fr/m/123"; 
$subst = "$1://go.tanger.fr/m/125?id=$2"; 
$result = preg_replace($re, $subst, $str); 

這裏實現這一目標是an IDEONE demo

+0

它對你有用嗎?或者你需要更多的幫助嗎? –

0

使用($ string是要在其中要改變字符串):

preg_replace('/(http(s)?:\/\/dominos.mylittlebiz.fr\/m\/)(\d+)/i', 'http://go.tanger.fr/m/\1?ID=XXX', $string);