„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie kann ich reguläre Ausdrücke verwenden, um URLs zu erkennen, einschließlich nackter URLs?

Wie kann ich reguläre Ausdrücke verwenden, um URLs zu erkennen, einschließlich nackter URLs?

Veröffentlicht am 20.12.2024
Durchsuche:640

How Can I Use Regular Expressions to Detect URLs, Including Naked URLs?

Erkennen von URLs mit regulären Ausdrücken

Ihr aktueller Code stimmt nicht mit nackten URLs überein, denen das Präfix „http://“ fehlt. Um dieses Problem zu lösen, sollten Sie einen umfassenden regulären Ausdruck verwenden:

https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\ ~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\ .~#?&//=]*)

Dieser erweiterte Ausdruck umfasst die folgenden Funktionen:

  • Es stellt sicher, dass URLs entweder mit „http://“ oder „ https://“, oder nichts.
  • Es ermöglicht Subdomains durch Einfügen von „(www.)“ als optionales Präfix.
  • Es unterstützt Domainnamen mit bis zu 256 Zeichen in der Länge und Top-Level-Domains bis zu 6 Zeichen.

Für diejenigen, die das HTTP-Protokoll in ihren Übereinstimmungen nicht benötigen, steht ein alternativer Ausdruck zur Verfügung:

[-a-zA-Z0-9@:%._\ ~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\ .~#?&//=]*)

Um die Funktionalität dieser Ausdrücke zu demonstrieren, schauen Sie sich die Online-Testtools unter http://regexr.com?37i6s (für den ersten Ausdruck) an oder http://regexr.com/3e6m0 (für den weniger restriktiven Ausdruck).

Hier ist eine Beispiel-JavaScript-Implementierung mit dem umfassenderen regulären Ausdruck:

const expression = /[-a-zA-Z0-9@:%._\ ~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\ .~#?&//=]*)/gi;
const regex = new RegExp(expression);
const t = 'www.google.com';

if (t.match(regex)) {
  alert("Successful match");
} else {
  alert("No match");
}
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3