2 回答

TA貢獻(xiàn)1874條經(jīng)驗(yàn) 獲得超12個(gè)贊
是貪婪的,除非量詞與a或修改的不相關(guān)。.
?
U
(Url|url)(\:|\b)(\s\b|\b).+?(\s|$)
您實(shí)際上可以進(jìn)一步簡(jiǎn)化它:
[Uu]rl(?::|\b)\s?\b.+?(?:\s|$)
如果希望 URL 位捕獲 帶有 ..+?
()
[Uu]rl(?::|\b)\s?\b(.+?)(?:\s|$)
https://regex101.com/r/urq2fM/2/

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超5個(gè)贊
捕獲直到第一個(gè)空格的一種方法是使用 ,它與一個(gè)或多個(gè)非空格字符的任何序列匹配:\S+
url:?\s*(\S+)
通過(guò)使用標(biāo)志,我們可以避免測(cè)試或或等。我們可以使用它來(lái)簡(jiǎn)化用法,僅將字符串替換為捕獲的組:iUrlurlURLpreg_replace
$url = preg_replace('/url:?\s*(\S+).*/i', '$1', $string);
例如
$strings = array("url: https://www.anysite/anything",
"url: https://www.anysite/anything another word");
foreach ($strings as $string) {
$url = preg_replace('/url:?\s*(\S+).*/i', '$1', $string);
echo "$url\n";
}
輸出:
https://www.anysite/anything
https://www.anysite/anything
- 2 回答
- 0 關(guān)注
- 127 瀏覽
添加回答
舉報(bào)