当前位置: 首页 > 图文教程 > 网络编程 > 正则表达式 > javascript 正则表达式用法 小结

正则表达式
[原创]正则匹配后面非指定字符的正则
一个关于正则表达式的问题
代替正则:HyperScriptExpression联合开发倡议公告
[原创]正则替换字符串功能
[原创]java 正则表达式基础,实例学习资料收集大全
web标准知识:丰富段落里的标签
js判断是否有6个连续数字的字符串的正则
正则表达式中的反向预搜索实现
精通 JavaScript中的正则表达式手机整理 推荐
取图片路径的正则
UBB 转换函数演示 (经典论坛)
pjblog的ubbcodeasp文件
PBlog2 公用JS代码
用的ubb转换
密码强度检测函数(正则)
正则表达式工具 Match Tracer
编写采集规则的好帮手—RegexBuddy 下载,正则不再难
正则表达式30分钟入门教程 v2.1版
asp 图片正则 替换,替换前检查图片是不是本地地址的方法
正则表达式口诀 正则表达式学习工具

javascript 正则表达式用法 小结


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 36 ::
收藏到网摘: n/a

许多朋友对于js的正则感觉方法比较乱,没有个统一的方法,大家可以看下,根据需要进行选择,或把一种用好了,另外一种自然也就很轻松了。 javascript正则表达式用法:
复制代码 代码如下:

function checkreg(myreg,mytext)
{
if(myreg.test(mytext)
{
alert("ok");
return true;
}
else
{
return false;
}
}

//另一种写法
复制代码 代码如下:

function checkreg(myreg,mytext)
{
var pattern = myreg; //或者 var pattern = new RegExp(myreg,"gi");
if(pattern.test(mytext))
{
alert("ok");
}
}

使用RegExp的显式构造函数,语法为:new RegExp("pattern"[,"flags"])。
使用RegExp的隐式构造函数,采用纯文本格式:/pattern/[flags]。
pattern部分为要使用的正则表达式模式文本,是必须的。在第一种方式中,pattern部分以JavaScript字符串的形式存在,需要使用双引号或单引号括起来;在第二种方式中,pattern部分嵌套在两个“/”之间,不能使用引号。
flags部分设置正则表达式的标志信息,是可选项。如果设置flags部分,在第一种方式中,以字符串的形式存在;在第二种方式中,以文本的形式紧接在最后一个“/”字符之后。flags可以是以下标志字符的组合。
g是全局标志。如果设置了这个标志,对某个文本执行搜索和替换操作时,将对文本中所有匹配的部分起作用。如果不设置这个标志,则仅搜索和替换最早匹配的内容。
i是忽略大小写标志。如果设置了这个标志,进行匹配比较时,将忽略大小写。
m是多行标志。如果不设置这个标志,那么元字符“^”只与整个被搜索字符串的开始位置相匹配,而元字符“markerrdquo;只与被搜索字符串的结束位置相匹配。如果设置了这个标志,“^”还可以与被搜索字符串中的“\n”或“\r”之后的位置(即下一行的行首)相匹配,而“markerrdquo;还可以与被搜索字符串中的“\n”或“\r”之后的位置(即下一行的行尾)相匹配。
由于JavaScript字符串中的“\”是一个转义字符,因此,使用显式构造函数创建RegExp实例对象时,应将原始正则表达式中的“\”用“\\”替换。
onkeyup="value=value.replace(/[^0-9\.]/g,'');" //正则表达式还可以用来替换字符串。
下面是软晨学习网编辑特别增加的一些:
复制代码 代码如下:

function cleanAndPaste( html ) {
html = html.replace(/<\/?SPAN[^>]*>/gi, "" );
html = html.replace(/<(\w[^>]*) class=([^ |>]*)([^>]*)/gi, "<$1$3") ;
html = html.replace(/<(\w[^>]*) style="([^"]*)"([^>]*)/gi, "<$1$3") ;
html = html.replace(/<(\w[^>]*) lang=([^ |>]*)([^>]*)/gi, "<$1$3") ;
html = html.replace(/<\\?\?xml[^>]*>/gi, "") ;
html = html.replace(/<\/?\w+:[^>]*>/gi, "") ;
html = html.replace(/ /, " " );
insertHTML( html ) ;
}

上面是用正则实现的替换代码,大家一定要学会这个了,用的比较多。更多文章可以参考软晨学习网的正则表达式栏目。