Javascript feststellen, ob die englische Alphabete nur

Bin auf der Suche nach text nur, wenn es mit Englisch Buchstaben und zahlen mit Javascript/jQuery.

Frage mich, was ist der effizienteste Weg, dies zu tun? Denn es könnten tausend Worte, sollte es so schnell wie möglich und ich will nicht von regex.

 var names[0] = 'test';
 var names[1] = 'हिन';
 var names[2] = 'لعربية';

 for (i=0;i<names.length;i++) {
    if (names[i] == ENGLISHMATCHCODEHERE) {
        //do something here
    }
 }

Vielen Dank für Ihre Zeit.

  • Was ist falsch mit der Verwendung von regex?
  • Würde nicht regex langsam sein? Vor allem auf Hunderte von Wörtern.
  • Ich glaube, Sie brauchen, um zu erklären, warum Sie nicht verwenden möchten regex. Reguläre Ausdrücke existieren, die genau diese Art von problem: string pattern-matching. Ich würde garantieren, dass reguläre Ausdrücke werden 'so schnell wie möglich', also ohne weitere Informationen, ohne Sie als Lösung nicht sinnvoll ist.
  • Randnotiz: Dein Beispiel-code ist ungültig, die erste Reihe von Erklärungen sind syntax-Fehler. Ich nehme an, du meinst var names = []; und dann names[0] = ... usw. (keine var vor Ihnen) und dass Sie erstellen ein array von Namen.
  • "Wäre das nicht regex langsam sein? Vor allem auf Hunderte von Worten." Nein, fast sicher schneller (nicht nur schneller, sondern viel schneller) als nur über etwas anderes, was du tun wirst, in der Tat. Werden Sie sicher, dass Sie die Wiederverwendung (anstatt neu zu kompilieren) die regex in jeder loop-iteration (ein literal ist in Ordnung).
  • Sorry das war nur ein Beispiel... Bin eine erweiterte JS-Programmierer. Hatte gehofft, für eine schnellere Lösung als regex.
  • Langsam im Vergleich zu, sagen wir, chunking durch die Streicher ein Zeichen in einer Zeit, machen Sie sicher, dass alle fallen, die in einem bestimmten Bereich? Implementieren Sie es mit regexes. Wenn die Lösung beweist, zu langsam, überqueren diese Brücke, wenn Sie zu ihm kommen. Aber wenn dein problem aussieht wie ein Nagel, fühlt sich an wie ein Nagel, riecht wie ein Nagel, ist lang und spitz wie ein Nagel aus, und hat eine Beschriftung, die sagen "Hi! Ich bin ein Nagel!", beenden Sie overthinking Ihre Lösung und schnappen Sie sich einen hammer.
  • Siehe mein Kommentar oben (überlappende Kommentare). Ich bezweifle sehr, du bist nicht tun es schneller in JavaScript als JavaScript-engine eingebaute regex-handling.
  • Danke an alle für Eure inputs 🙂

InformationsquelleAutor Alec Smart | 2010-03-08
Schreibe einen Kommentar