专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »Javascript教程 » 正则表达式匹配:JavaScrip中t的模式匹配与正则表达式 »正文

正则表达式匹配:JavaScrip中t的模式匹配与正则表达式

来源: 发布时间:星期四, 2009年2月12日 浏览:160次 评论:0


模式表达式首尾带有“/”,声明并化正则表达式对象可以使用RegExp对象也可直接将用“/”包含模式表达式赋值给变量
模式表达式中
含义
\\ (1)个特殊标记开始(例:\\d表示个数字)
(2)把个特殊当做普通对待(例:\\*表示个星号)
开头
$ 结尾
* 特殊数量符表示它前面标记或标记组合出现任意次(包括0次)
+ 特殊数量符表示它前面标记或标记组合出现至少
? 特殊数量符表示它前面标记或标记组合出现至多
. 表示除了换行符(\\n)的外任意单个
(abc) 表示abc这个组合
a|b 表示a或者b
{3} 表示它前面标记或标记组合出现3次
{3,} 表示它前面标记或标记组合至少出现3次
{4,8} 表示它前面标记或标记组合出现4次至8次
[abcdef] 这是枚举形式表示a至f 6个字母中任意
[a-f] 这是简化形式表示a至f 6个字母中任意
[a-zA-Z0-9] 表示大小写字母及数字中任意
[^aeiou] 表示除了a,e,i,o,u处任意
\\b 表示个单词边界
\\B 表示个单词非边界
\\d 表示个数字相当于[0-9]
\\D 表示除了数字外相当于[^0-9]
\\s 表示个空格符
\\S 表示除了空格外
\\t 表示个制表符
\\n 表示个换行符
\\r 表示个回车符
\\w 表示大小写字母、数字及下划线(_)中任意相当于[a-zA-Z0-9]
\\W 表示大小写字母、数字及下划线(_)的外任意相当于[^a-zA-Z0-9]
\\0 表示空null

<scriptlanguage=\"javascript\">
<!--
varpattern=/^d...{6}$/;//声明了正则表达式对象
functioncheckZipCode
...{
varzipcode=document.getElementById(\"zipcode\").value;
(!pattern.test(zipcode))//进行模式匹配
...{
alert(\"邮政编码无效!\");
;
}
alert(\"ok!\");
}
-->
</script>
邮政编码:<inputtype=\"text\"id=\"zipcode\"><inputtype=\"button\"value=\"check\"onclick=\"checkZipCode;\">RegExp对象
RegExp对象构造:RegExp(pattern,attributes)
例:varp=RegExp(\"s$\");//任何以s结尾
参数:pattern是模式表达式也可以是个正则表达式对象
参数:attributes可以是\"g\"、\"i\"或\"m\"
g:表明搜索模式为全局匹配
i:表示在匹配过程中忽略大小写
m:表示支持多行匹配

RegExp对象属性
lastIndex属性:用于在全局匹配模式下记录最近次执行exec或test思路方法匹配到索引以便从该位置继续下次匹配
source属性:代表模式表达式不包含首尾“/”
RegExp对象思路方法[Page]
exec思路方法:用于执行较为全面模式匹配其参数是将进行匹配返回值为类型
个元素是和模式表达式匹配那部分文本返回还有以下几个属性:
length:表明长度
index:表明匹配文本首字母在串中位置(索引)
input:串本身



\");}--> <scriptlanguage=\"javascript\">
<!--
varpattern1=RegExp(\"\\bJava\\B\",\"g\");
vartext=\"JavaScriptismorefunthanJavaorJavaBeans!\";
varresult;
while((result=pattern1.exec(text))!=null)...{
document.write(\"匹配文本为:\"+result[0]+\"位置为:\"+result.index+\"下次查找起始位置:\"+pattern1.lastIndex+\"<br/>\");
}

varpattern2=/Java(s|b)/gi;
while((result=pattern2.exec(text))!=null)...{
document.write(\"返回个元素:\"+result[0]+\"返回第 2个元素:\"+result[1]+\"<br/>\");
}
-->
</script>
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: