工作中要取一个值,如下
XML/HTML代码
- <div id="aide">245张</div>
这个值未知,已经确认会存在 空格/下划线/字母/中文等.不管那种情况,只取其中的数字..
于是个人想到:
JavaScript代码
- <script type="text/javascript">
- var ad = document.getElementById("aide").innerHTML;
- var a = ad.replace(/张/,"");
- alert(a);
- </script>
但这样并没完全达到意外情况下的要求,只取值数字.虽然知道正则能够得到匹配的值,但除了懂得 [0-9] 是数字字符外,其它的一无所知.
搜索后得到 [^0-9] 是非数字字符.于是测试.
JavaScript代码
- <script type="text/javascript">
- var ad = document.getElementById("aide").innerHTML;
- var b = ad.replace(/[^0-9]/,"");
- alert(b);
- </script>
在这个过程中顺便问了下群里的同仁,得到 [^\d]/g ,搜索之, 原来 \d 匹配一个数字字符,等价于[0-9]。 而^\d 匹配一个非数字字符。等价于[^0-9]。
在这个过程中一直不明白 /g 是干什么用的.也顺便问下给我这个的那位仁兄,或者知道其意思的,请回下,在下 测试的过程中去掉也不觉得有什么错.
如此:
JavaScript代码
- <script type="text/javascript">
- var ad = document.getElementById("aide").innerHTML;
- var c = ad.replace(/[^\d]/,"");
- alert(c);
- </script>
最后,补上一个搜索到的 正则列表. 表放在例子里.
详情请点击 demo

