Regulärer Ausdruck zum Abgleichen von URLs mit oder ohne Protokolle
Für URLs, die möglicherweise das Präfix „http://www“ enthalten oder nicht , kann ein regulärer Ausdruck verwendet werden, um den Abgleichvorgang durchzuführen. Nachfolgend finden Sie ein detailliertes RegEx-Muster:
((https?|ftp)://)?([a-z0-9+!*(),;?&=$_.-]+(:[a-z0-9+!*(),;?&=$_.-]+)?@)?([a-z0-9\-\.]*)\.(([a-z]{2,4})|([0-9]{1,3}\.([0-9]{1,3})\.([0-9]{1,3})))(:[0-9]{2,5})?(/([a-z0-9+$_%-]\.?)+)*/?(\?[a-z+&$_.-][a-z0-9;:@&%=+/$_.-]*)?(\#[a-z_.-][a-z0-9+$%_.-]*)?
Um dieses Muster für die URL-Validierung zu nutzen, kann es auf folgende Weise angewendet werden:
<code class="php">if (preg_match("~^$regex$~i", 'www.example.com/etcetc', $m)) var_dump($m); if (preg_match("~^$regex$~i", 'http://www.example.com/etcetc', $m)) var_dump($m);</code>
Diese RegEx-Lösung bietet eine umfassende Möglichkeit um URLs abzugleichen, unabhängig davon, ob sie das Präfix „http://“ enthalten oder nicht.
Das obige ist der detaillierte Inhalt vonUniverseller regulärer Ausdruck für den URL-Abgleich mit oder ohne Protokolle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
// 处理每一行数据
$download_list[] = str_replace(['/',"'",')','('],['\/',"\'",'\)','\('],addslashes($row['name']));
}
if(!empty($download_list))
{
$download_reg = preg_quote(implode('|',$download_list));
preg_match_all('/'.$download_reg.'/is', $content, $matches);
if (!empty($matches[0])) {
$games = $matches[0];
foreach ($matches[0] as $key => $match) {
$tempTag = "<🎜>";
$tempTags[] = $match;
$content = str_replace($match, $tempTag, $content);
}