Reguläre Ausdrücke bieten eine leistungsstarke Möglichkeit, Daten aus komplexen Zeichenfolgen, einschließlich URLs, zu extrahieren. Unabhängig davon, ob Sie mit URLs arbeiten, die „http://www“-Präfixe enthalten oder nicht, kann ein umfassender regulärer Ausdruck Ihren Anforderungen gerecht werden.
Der folgende Ausdruck wurde so erstellt, dass er URLs mit und ohne „http“ zuordnet Präfix „://www“:
((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+$%_.-]*)?
Dieser Ausdruck enthält die folgenden Komponenten:
Um diesen Ausdruck zu verwenden, können Sie den folgenden PHP-Code verwenden :
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);
Dieser Code stimmt erfolgreich mit beiden URLs überein, unabhängig davon, ob das Präfix „http://www“ vorhanden ist.
Das obige ist der detaillierte Inhalt vonWie erkennt man URLs unterschiedlicher Formate mithilfe regulärer Ausdrücke?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!