--------->> JavaScript中规则表达式问题 :-(

kittywu 2001-07-19 04:31:58
高手请帮忙:
下面的规则表达式作何解?
var re = /^[\-\+]?([1-9]\d*|0|[1-9]\d{0,2}(,\d{3})*)(\.\d+)?([Ee][\-\+]?\d+)?$/;

谢谢!!
...全文
65 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
kittywu 2001-07-20
  • 打赏
  • 举报
回复
谢谢 ChDw(米)的回答!
如果我要判断一个值是否全为数字(0 - 9),不包括小数点
或一个值是否全为字符(a - z 和 A - Z)
那这个规则表达式该如何写?
ChDw 2001-07-19
  • 打赏
  • 举报
回复
哎呀,错了。应该可以包含零。我看错了

1,204,567 is ok

ChDw 2001-07-19
  • 打赏
  • 举报
回复
这段东西其实是在做科学计数法的判断,但是不能够包含零(除非他的值就是零)
如:
-1259515E-3 ok
1,345,667E+3 ok
1,345,664 ok
0 ok

1,204,567 not ok
ChDw 2001-07-19
  • 打赏
  • 举报
回复
/^[\-\+]?([1-9]\d*¦0¦[1-9]\d{0,2}(,\d{3})*)(\.\d+)?([Ee][\-\+]?\d+)?$/;
^=开始,之前不能有其他的字符
[\-\+]?表示是减号或者是加号,或者都没有
([1-9]\d*¦0¦[1-9]\d{0,2}(,\d{3}))
表示(很多个1,2,3..9 或者 0 或者 ((零个到两个) 1-9 接着 很多个(,(1,2,3..9)) ) )一个或没有

如:12345, 0 1,346,678,123

(\.\d+)? 表示 (.后面接着一个或以上个数字(0,1,2..9))一个或没有

如: .0135 或者没有



([Ee][\-\+]?\d+) 表示((E或者e) (可以是加号减号或没有) 接着一个或以上的数字)一个或没有

$结束

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧