Ich mag einen autocompleteer für den Eingang meines Web-Browser machen, zum Beispiel, wenn Sie die Tab-Taste drücken, wird das Wort htt
selbst komplette tp://
auf den Wert meines EingangsAbschließen mit regexp
Des hinzufügen Die Autokomplettierungseigenschaft muss nur gültig sein, wenn der Benutzer am Anfang der URL "htt" eingibt.
Ich dachte, die automatische Vervollständigung von einem regulären Ausdruck validiert zu machen:
if(event.keyCode == 9){
if(myInput.value.match(/^(h|ht|htt|http|http:|http:\/)/)){
myInput.value = "http://";
}
}
Aber das Ergebnis ist nicht das erwartete ein ...
Gute Antwort Insgesamt aber würde ich ein etwas skalierbarer Muster vorschlagen: 'h (? T? (: T (? : p (? :: \ /?)?)?)?)? ' – CAustin
@CAustin, ja, das ist in der Tat effizienter, obwohl ich denke, dass Regex-Parser eigentlich schlau genug sein sollten, um es so zu kompilieren (außer für die nicht einfangende Gruppe, die natürlich ein Unterschied bleibt). – trincot
Vielen Dank für Ihre Antworten! Das ist genau das, wonach ich gesucht habe, es ist unglaublich, danke für Ihr Fachwissen – Chr