javascript中使用正则表达式的一例 - 判断页码范围
2009-05-31 19:02
495 查看
之前长时间使用struts框架进行验证,一直是在validation.xml中配置正则表达式来实现的。只要配置了正确的正则表达式,剩下的过程全都不要关心,这一切全部是在server端由struts框架完成的,至于其中具体的验证过程却一直没有仔细的了解过,应该是利用了jdk中的regex相关的类。
最近有业务要求必须在页面无刷新的情况下完成验证。想了一下,在不考虑使用ajax的情况下,只有使用javascript来完成这个验证过程了。
在调查了javascript中正则表达式相关的几个method之后,决定使用RegExp类和string.match()来完成这个验证过程。
本次是要完成一个关于页码范围的验证。就是我们使用word文档进行打印的时候,页码的选择范围。在这个输入框中我们可以只选择想打印的page,可以输入具体的页码(如:3)也可以使用范围(如:3-5)。而且可以使用“,"来连接多个选项。
首先是声明一个全局检索的正则表达式对象pageNumRegExp。然后调用string的match()方法。这个方法返回一个数组,包含所有匹配的字符串。在不匹配的时候会返回null。所以使用的判断逻辑就是,如果返回结果不为null,并且数组长度为1,而且这个匹配的结果正好是要验证的字符串的话,就说明这个字符串是符合验证规则的。
以上这种方法是我现在能想到的最简洁的方式,有朋友有更好的方法的话,拜托留言交流一下,多谢!
最近有业务要求必须在页面无刷新的情况下完成验证。想了一下,在不考虑使用ajax的情况下,只有使用javascript来完成这个验证过程了。
在调查了javascript中正则表达式相关的几个method之后,决定使用RegExp类和string.match()来完成这个验证过程。
function isValidPageNum(str) { str = str.replace(/ /g, ""); var pageNumberRegExp = new RegExp("(//d+(-//d+)?)(,//d+(-//d+)?)*,?", "g"); var result = str.match(pageNumberRegExp); if (result != null && result.length == 1 && result[0] == str) { return true; } return false; }
本次是要完成一个关于页码范围的验证。就是我们使用word文档进行打印的时候,页码的选择范围。在这个输入框中我们可以只选择想打印的page,可以输入具体的页码(如:3)也可以使用范围(如:3-5)。而且可以使用“,"来连接多个选项。
首先是声明一个全局检索的正则表达式对象pageNumRegExp。然后调用string的match()方法。这个方法返回一个数组,包含所有匹配的字符串。在不匹配的时候会返回null。所以使用的判断逻辑就是,如果返回结果不为null,并且数组长度为1,而且这个匹配的结果正好是要验证的字符串的话,就说明这个字符串是符合验证规则的。
以上这种方法是我现在能想到的最简洁的方式,有朋友有更好的方法的话,拜托留言交流一下,多谢!
相关文章推荐
- 用JavaScript实现form表单的数据提交--使用正则表达式对数据判断
- javascript 正则表达式判断IP地址合法性
- JavaScript使用正则表达式获取全部分组内容的方法示例
- JavaScript利用正则表达式自己写数字判断函数
- JavaScript中使用正则表达式举例
- JavaScript 使用正则表达式进行表单验证的示例代码
- 注意判断js中使用正则表达式的转义字符,到底是对谁进行转义!!!
- 使用Java正则表达式提取字符串中的数字一例
- 利用JavaScript和正则表达式进行丰富的日期判断(给其它项目组的代码,有比较好的编程风格和注释)
- JavaScript中String对象的match()、replace() 配合正则表达式使用
- 使用JavaScript正则表达式如何去掉双引号
- PHP中判断字符串是否包含某个字符时,建议使用正则表达式preg_match()
- JavaScript 正则表达式使用
- 使用Javascript正则表达式来格式化XML内容
- javascript 常用正则表达式判断方法
- 正则表达式提取网址、标题、图片等一例(.Net Asp Javascript/Js)的实现
- javascript使用正则表达式检测IP地址
- Javascript-正则表达式-开发中的使用.
- javascript的正则表达式判断中文