Was wäre der sauberste Weg, dies zu tun, der sowohl im IE als auch in Firefox funktioniert?
Meine Zeichenfolge sieht folgendermaßen aus: Sometext-20202
Jetzt können der 'Sometext' und die Ganzzahl nach dem Bindestrich unterschiedlich lang sein.
Sollte ich nur Teilzeichenfolge und Index von oder ist die andere Möglichkeit?
javascript
mrblah
quelle
quelle
sometext-20202-303
?get everything after the dash in a string in javascript
was in diesem Fall scheitern würde.Eine Lösung, die ich bevorzuge, wäre:
Wo
slug
wäre dein Ergebnis?quelle
quelle
quelle
AFAIK, beide
substring()
undindexOf()
werden sowohl von Mozilla als auch von IE unterstützt. Beachten Sie jedoch, dass substr () in früheren Versionen einiger Browser (insbesondere Netscape / Opera) möglicherweise nicht unterstützt wird.Ihr Beitrag zeigt an, dass Sie bereits wissen, wie es geht,
substring()
undindexOf()
daher veröffentliche ich kein Codebeispiel.quelle
Sie können dies mit der integrierten RegExp (Muster [, Flags]) Factory Notation in js wie folgt tun:
In der obigen Code-Exec-Funktion wird ein Array mit zwei Elementen (["-20202", "20202"]) zurückgegeben, eines mit Bindestrich (-20202) und eines ohne Bindestrich (20202). Wählen Sie das zweite Element (Index 1).
quelle
quelle
myString.split('-').splice(-1).join('-')
Verwenden Sie einen regulären Ausdruck der Form: \ w- \ d + wobei a \ w ein Wort und \ d eine Ziffer darstellt. Sie werden nicht sofort funktionieren, also spielen Sie herum. Versuchen Sie dies .
quelle