我有以下字符串:如何從字符串獲取http?
"http://add.co" id="num_1"
我怎樣才能從這個字符串只得到"http://add.co"
?
我試圖使用模式:
^http:\/\/(+s)*
我有以下字符串:如何從字符串獲取http?
"http://add.co" id="num_1"
我怎樣才能從這個字符串只得到"http://add.co"
?
我試圖使用模式:
^http:\/\/(+s)*
有一對夫婦的方式來實現你想要什麼:
隨着preg_match:
$str = '"http://add.co" id="num_1"';
preg_match('/^"(.*?)"/', $str, $matches);
echo $matches[1];
$str = '"http://add.co" id="num_1"';
$url = str_replace("\"", "", explode(" ", $str)[0]);
echo $url;
你可以使用這個表達式^"http:\/\/[^"]+(?=")
幾乎捕捉您的網址。
String : "http://add.co" id="num_1"
Matches : "http://add.co
你可以最後"
追加到比賽進行修復。也許有人可以編輯我的正則表達式來包含最後的"
。
在這裏看到的例子:https://regex101.com/r/oppeaQ/1
像這樣:
1)explode()
函數傷了你的字符串分解成分隔符陣列。
2)。preg_replace()
替換與定義的正則表達式匹配的字符串的包含。
$string = '"http://add.co" id="num_1"';
$array = explode(':',$string);
echo preg_replace('/\"/','',$array[0]);
輸出:
http
AND
$string = '"http://add.co" id="num_1"';
$array = explode(' ',$string);
echo preg_replace('/\"/','',$array[0]);
輸出:
http://add.co
<?php
$string = '"http://add.co id="num_1"';
preg_match_all('/[a-z]+:\/\/\S+/', $string, $matches);
print($matches[0][0]);
?>
O/P
在我的機器http://add.co //測試
嘗試'爆炸(「」,$ str)[0]'。或者可以在一開始就有沒有URL的字符串?然後嘗試''〜^「?https?:// \ S +)*〜'' –
http://stackoverflow.com/questions/6768793/get-the-full-url-in-php這會幫助你。 – Bogdan
我混淆了你的問題。你想要什麼'http'或'http:// add,co' ..查看答案。 –