Odstraňte z řetězce v JavaScriptu všechny nečíselné znaky

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,'');