I have a string. I need to parse it, replacing any chars (except numbers ( 0
to 9
), ,
and .
.
How can I do it with javascript?
Tried with :
string.replace(/[a-zA-Z]*/, "");
but seems it doesnt works. Also, I need ANY chars, not only aZ (also ?, /, white space, and so on, expect, as said, , and .
Use a negated character class
[^0-9,.]
and put in any character you don't want to be replaced, it will match all the others.
See it here on Regexr
You can optimize it by adding a quantifier +
, so that it replaces a sequence of those characters at once and not each by each.
string.replace(/[^0-9,.]+/g, "");
As Felix Kling pointed out, its important to use the global option g
to match on all occurrences of the pattern.
See it here on Regexr
string.replace(/[^\d,.]+/g, "");
should do.
[^\\d.,]
means "any character except digit, comma or period", a negated character class . +
instead of *
or you'll have lots of empty matches replaced with empty strings./g
so all instances are replaced.Try to replace all chars except digits and .
,
and do the replace globally:
string.replace(/[^0-9\,\.]+/g, "");
Try This Below code is prevent alpha key
onKeypress="return Custom(event,'[0-9]');"
function Custom(e, cPattern) {
var key = [e.keyCode || e.which];
var pattern = new String(cPattern);
var keychar = String.fromCharCode([e.keyCode || e.which]);
var pattern1 = new RegExp(pattern);
if ((key == null) || (key == 0) || (key == 8) ||
(key == 9) || (key == 13) || (key == 27)) {
return true;
}
else if (pattern1.test(keychar)) {
return true;
}
else {
e.preventDefault ? e.preventDefault() : e.returnValue = false;
}
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.