Zvažte scénář bez modelu DOM, kde byste chtěli odstranit všechny nečíselné znaky z řetězce pomocí JavaScriptu/ECMAScriptu. Všechny znaky, které jsou v rozsahu 0 - 9
by měl být zachován.
var myString = 'abc123.8<blah>'; //desired output is 1238
Jak byste toho dosáhli v prostém JavaScriptu? Pamatujte, že se jedná o scénář bez DOM, takže jQuery a další řešení zahrnující události prohlížeče a stisknutí kláves nejsou vhodné.
Odpověď
Použijte řetězec .replace
metoda s regulárním výrazem D
, což je zkrácená třída znaků, která odpovídá všem nečíslicím:
myString = myString.replace(/D/g,'');