1
Ich möchte bestimmte Tld-Domain auf meiner Zeichenfolge entfernen, aber ich habe ein paar Probleme.php entfernen Top-Level-Domain mit preg_replace
$MyString = 'Amazon.com: pada port .com3 Dog Name Tags.com googl.com™ any.com™ on mys.co.uk® end.Commando is .commitment.com & communism.ca';
echo preg_replace('~\.(com|info|us|org|top|xyz|co\.in|co\.uk|ca|mobi)(?:[^a-z\d]|$)~i', '', $MyString);`
die Code-Ausgabe ist
Amazon pada port .com3 Dog Name Tagsgoogltrade; any on mys end.Commando is .commitment& communism
Ausgabe, die i
Amazon: pada port .com3 Dog Name Tags googl® any™ on mys® end.Commando is .commitment & communism
'([^ az \ d] | $?)' Werden die zusätzlichen Zeichen übereinstimmen und löschen Sie sie, da du bist sie nicht in die Ersatzzeichenfolge einfügen. –
wenn ich entferne (?: [^ A-z \ d] | $) => .com3 wird auch entfernt – DnKurnia1
was ist zu sagen, dass .com3 kein gültiges tld ist? icann erlaubt heutzutage fast alles, einschließlich Küchenspülen, als TLDs. Sie können nicht eine einfache Regex verwenden, um zu filtern, was im Wesentlichen eine ewig wechselnde Liste von möglichen Tlds ist –