首页 »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
相关文章读者评论发表评论 |
|