精华帖 (13) :: 良好帖 (0) :: 新手帖 (4) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2010-04-30
呼呼···看完了 收获挺大的~~ 期待下一章~~
顺便看了下lz其他的博客 突然感觉自己菜的不能太菜了 马上离开校园了 发现大学四年好像啥都没有学到 以后要学习的东西还有好多好多·· |
|
返回顶楼 | |
发表时间:2010-04-30
xiaoyayaday 写道 呼呼···看完了 收获挺大的~~ 期待下一章~~
顺便看了下lz其他的博客 突然感觉自己菜的不能太菜了 马上离开校园了 发现大学四年好像啥都没有学到 以后要学习的东西还有好多好多·· 呵呵,慢慢来,都是一步一步走过来的。其实我的水平也一般,勉强算是一个合格的程序员,不过你能意识到自己的缺点是最好的,老觉得自己多厉害多厉害就危险了。 |
|
返回顶楼 | |
发表时间:2010-05-01
非常棒的教程
|
|
返回顶楼 | |
发表时间:2010-05-02
谢谢,真不错,你真是我的偶像。:)
|
|
返回顶楼 | |
发表时间:2010-05-03
正则表达式能不能根据前的数字来判断后面数字的取值范围呢?
|
|
返回顶楼 | |
发表时间:2010-05-05
var pid = /^[\d{15}|\d{18}]$/;//身份证 println(pid.test("4302211985101050184355555555555555555"));//输出为false 关于你修改的身份证验证 我在fireFox上测试 发现如果将号码改为15位或者18位 也不能通过测试 任然输入为false 求解 |
|
返回顶楼 | |
发表时间:2010-05-05
jwtiger 写道 var pid = /^[\d{15}|\d{18}]$/;//身份证 println(pid.test("4302211985101050184355555555555555555"));//输出为false 关于你修改的身份证验证 我在fireFox上测试 发现如果将号码改为15位或者18位 也不能通过测试 任然输入为false 求解 有点夸张,怎么写也不会错到楼主这样 alert(/^\d{15}$|^\d{18}$/.test("430221198510105018")); alert(/^(?:\d{15}|\d{18})$/.test("430221198510105018")); alert(/^\d{15}(?:\d{3})?$/.test("430221198510105018")); alert(/^\d{15}(?=$|\d{3}$)/.test("430221198510105018")); |
|
返回顶楼 | |
发表时间:2010-05-05
zbm2001 写道 jwtiger 写道 var pid = /^[\d{15}|\d{18}]$/;//身份证 println(pid.test("4302211985101050184355555555555555555"));//输出为false 关于你修改的身份证验证 我在fireFox上测试 发现如果将号码改为15位或者18位 也不能通过测试 任然输入为false 求解 有点夸张,怎么写也不会错到楼主这样 alert(/^\d{15}$|^\d{18}$/.test("430221198510105018")); alert(/^(?:\d{15}|\d{18})$/.test("430221198510105018")); alert(/^\d{15}(?:\d{3})?$/.test("430221198510105018")); alert(/^\d{15}(?=$|\d{3}$)/.test("430221198510105018")); 谢谢你的指正。不过我没有想明白:/^[\d{15}|\d{18}]$/这个为何不行?可否给我解释下?谢谢了 |
|
返回顶楼 | |
发表时间:2010-05-05
正确的应该是这样:
/^(\d{15}|\d{18})$/ 我想,更深层次的原因是中括号表示一个字符,而小括号表示的是一组字符。 比如: [a-zA-Z]表示一个字符,或者[abc],表示的是a或b或c,这样的话,之前的表达式就错了,需要用括号。 |
|
返回顶楼 | |
发表时间:2010-05-05
jwtiger 写道 var pid = /^[\d{15}|\d{18}]$/;//身份证 println(pid.test("4302211985101050184355555555555555555"));//输出为false 关于你修改的身份证验证 我在fireFox上测试 发现如果将号码改为15位或者18位 也不能通过测试 任然输入为false 求解 不好意思,这个表达式有错误,应该修改为小括号,而非中括号: var pid = /^(\d{15}|\d{18})$/;//身份证 很感谢你的细心测试,我当时测的不够仔细,只测试了返回false的情况,没有测试返回为true的。 |
|
返回顶楼 | |