哪些自己曾经害怕的正则表达式以及一个万能的校验
2013-09-16 18:10
375 查看
var strSrc = "xxa1b01c001yya2b02c002zz";
var re = /a(\d)b(\d{2})c(\d{3})/gi;
//获得匹配的字符串数组
function getMatchString(strSrc, re) {
var array;
array = strSrc.match(re);
for ( var int = 0, j = array.length; int < j; int++) {
var array_element = array[int];
if (int < j - 1)
document.write("[\"" + array[int] + "\",");
else
document.write("\"" + array[int] + "\"]");
}
}
var str ="我.. ..我 ...要... 要学编程";
//去除啰嗦
function removeToomuchWord(str)
{
var str2= str.replace(/\./g,"").replace(/\s/g,"").replace(/(.)\1/g,"$1");
document.writeln(str2);
}
var str = "win a window";
//替换 window win a book 替换win 为 lost 结果为 window lost a book
function replace(str)
{
document.write(str.replace(/\bwin\b/g,"lose"));
}
var str = "http://www.baidu.com:8080/0912.html";
//获得url的各部分信息
function getUrlPartInfo(str)
{
var reg =/^(\w+):\/\/([^:/]*)(?::(\d*))?([^#]*)$/;
var arrays = str.match(reg);
var strInfo ="" ;
for(var index in arrays)
strInfo += arrays[index]+" , ";
alert(strInfo);
}
//万能的校验器
//以后只需要添加相应的正则表达式就行了,代码不用修改
var patterns = new Object();
patterns.ip = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])(\.\d{1,2}|1\d\d|2[0-4]\d|25[0-5]){3}$/;
patterns.email = /^(\w+)@(\w+)(\.\w+)+$/;
patterns.date = /^(\d{4})-(0?[0-9]|1[0-2])-(0?[0-9]|[0-2]\d|3[0-1])$/;
// 23:23:59
patterns.time = /^([0-1]\d|2[0-3]):([0-5]\d):([0-5]\d)$/;
function verify(str, pat)
{
var pattern = patterns[pat];
if (str.match(pattern))
return true;
else
return false;
}
getMatchString(strSrc, re);
removeToomuchWord(str);
replace(str);
getUrlPartInfo(str)
alert(verify("26.1.123.2", "ip") + ", " + verify("hilishuai.com", "email")
+ " , " + verify("2003-13-31", "date") + " ,"
+ verify("23:60:22", "time"));
var re = /a(\d)b(\d{2})c(\d{3})/gi;
//获得匹配的字符串数组
function getMatchString(strSrc, re) {
var array;
array = strSrc.match(re);
for ( var int = 0, j = array.length; int < j; int++) {
var array_element = array[int];
if (int < j - 1)
document.write("[\"" + array[int] + "\",");
else
document.write("\"" + array[int] + "\"]");
}
}
var str ="我.. ..我 ...要... 要学编程";
//去除啰嗦
function removeToomuchWord(str)
{
var str2= str.replace(/\./g,"").replace(/\s/g,"").replace(/(.)\1/g,"$1");
document.writeln(str2);
}
var str = "win a window";
//替换 window win a book 替换win 为 lost 结果为 window lost a book
function replace(str)
{
document.write(str.replace(/\bwin\b/g,"lose"));
}
var str = "http://www.baidu.com:8080/0912.html";
//获得url的各部分信息
function getUrlPartInfo(str)
{
var reg =/^(\w+):\/\/([^:/]*)(?::(\d*))?([^#]*)$/;
var arrays = str.match(reg);
var strInfo ="" ;
for(var index in arrays)
strInfo += arrays[index]+" , ";
alert(strInfo);
}
//万能的校验器
//以后只需要添加相应的正则表达式就行了,代码不用修改
var patterns = new Object();
patterns.ip = /^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])(\.\d{1,2}|1\d\d|2[0-4]\d|25[0-5]){3}$/;
patterns.email = /^(\w+)@(\w+)(\.\w+)+$/;
patterns.date = /^(\d{4})-(0?[0-9]|1[0-2])-(0?[0-9]|[0-2]\d|3[0-1])$/;
// 23:23:59
patterns.time = /^([0-1]\d|2[0-3]):([0-5]\d):([0-5]\d)$/;
function verify(str, pat)
{
var pattern = patterns[pat];
if (str.match(pattern))
return true;
else
return false;
}
getMatchString(strSrc, re);
removeToomuchWord(str);
replace(str);
getUrlPartInfo(str)
alert(verify("26.1.123.2", "ip") + ", " + verify("hilishuai.com", "email")
+ " , " + verify("2003-13-31", "date") + " ,"
+ verify("23:60:22", "time"));
相关文章推荐
- 正则表达式对邮件地址进行校验以及从一个字符串中匹配出一个格式正确的邮件地址
- 自己动手写一个简单正则表达式解析器(待续,未完成)
- 自己写的一个正则表达式抓取页面内容
- 自己动手写一个轻巧,高效的正则表达式引擎
- 使用正则表达式写一个网页爬虫案例获取指定文档中的邮件地址保存到自己指定的文件夹中
- js自己写的一个手机电话同时可以验证的正则表达式
- 一个校验日期的正则表达式
- 一个java正则表达式的case以及学习链接
- Extjs表单的数据校验以及正则表达式校验
- 详解一个自己原创的正则匹配IP的表达式
- 正则表达式校验一个数字字符串是否为升序
- js表单校验涉及到的正则表达式以及校验方法的封装
- 详解一个自己原创的正则匹配IP的表达式
- 发布一个自己写的文件重命名工具,支持正则表达式替换和自定义规则。
- 介绍一个自己写的学习正则表达式的小工具
- 正则表达式以及Java中的一个正则表达式处理库
- 黑马程序员_学习笔记4 IO流以及正则表达式解决一个传智播客的问题
- 自己写了一个判断正则表达式的脚本
- 自己动手写一个判断网址合法的C/C++的正则表达式程序
- java中使用正则表达式校验的一个例子