JavaScript正则表达式定义字符集
2017-08-17 21:16
405 查看
[a-e] 表示a到e这些字符中的某一个字符
[aeiou] 表示aeiou这5个字符其中的某一个字符
[a-zA-Z] 表示大写、小写字母中的某一个字符
[a-zA-Z0-9_-] 或小写、或大学、或数字或下划线横杠某一个字符
[0-9] 表示0到9之间任意一个数字
^ : 表示字符串的开始位置
( ): 标记一个子表达式的开始和结束位置。
* : 其前面那个单元出现0次或以上(任意次数)
. : 匹配除换行符 \n之外的任何单字符
+ : 其前面那个单元出现1次或以上
? : 其前面那个单元出现0次或1次
\ : 这个符号是用来转义的
| : 指明两项之间的一个选择
+ ? * 功能:
. | \ 功能:
^ $ 功能:
() 功能:
[aeiou] 表示aeiou这5个字符其中的某一个字符
[a-zA-Z] 表示大写、小写字母中的某一个字符
[a-zA-Z0-9_-] 或小写、或大学、或数字或下划线横杠某一个字符
[0-9] 表示0到9之间任意一个数字
<script type="text/javascript"> //创建一个正则模式 //[0-9]匹配 var reg = /[0-9]/ var str = "2017-8-12"; //结果:["2", index: 0, input: "2017-8-12"] var reg = /[5-7]/ var str = "1997"; //结果:["7", index: 3, input: "1997"] var reg = /[a-e]/; var str = "hello"; //结果:["e", index: 1, input: "hello"] var reg = /[A-G]/; var str = "World"; //结果:null var reg = /[ptrdx]/; var str = "computer"; //结果:["p", index: 3, input: "computer"] var reg = /[a-zA-Z0-9_-]/; var str = "@##$%^&*(_#@FJD"; //结果:["_", index: 9, input: "@##$%^&*(_#@FJD"] //字符串.match(正则) var rst = str.match(reg); console.log(rst); </script>
1、特别字符组成
$ : 匹配输入字符串的结尾位置。^ : 表示字符串的开始位置
( ): 标记一个子表达式的开始和结束位置。
* : 其前面那个单元出现0次或以上(任意次数)
. : 匹配除换行符 \n之外的任何单字符
+ : 其前面那个单元出现1次或以上
? : 其前面那个单元出现0次或1次
\ : 这个符号是用来转义的
| : 指明两项之间的一个选择
+ ? * 功能:
<script type="text/javascript"> var reg = /[0-9]+/; var str = "2017-8-12"; //结果:["2017", index: 0, input: "2017-8-12"] var reg = /go*gle/; var str = "goooooogle"; //结果:["goooooogle", index: 0, input: "goooooogle"] var reg = /[0-9]*/; var str = "today is 222"; //结果:["", index: 0, input: "today is 222"] var str = "222 today is"; //结果:["222", index: 0, input: "222 today is"] var reg = /wo?rld/; var str = "woorld"; //结果:null var str = "wrld"; //结果:["wrld", index: 0, input: "wrld"] //字符串.match(正则) var rst = str.match(reg); console.log(rst); </script>
. | \ 功能:
<script type="text/javascript"> var reg = /.*/; var str = "dasda^%&%*lklJDS"; //结果:["dasda^%&%*lklJDS", index: 0, input: "dasda^%&%*lklJDS"] var reg = /milk|fish/; var str = "cat like eat fish"; //结果:["fish", index: 13, input: "cat like eat fish"] var str = "cat like eat milk and fish"; //结果:["milk", index: 13, input: "cat like eat milk and fish"] var reg = /[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/; var str = "123.206.94.112"; //结果:["123.206.94.112", index: 0, input: "123.206.94.112"] var str = "123.206.94"; //结果:null //字符串.match(正则) var rst = str.match(reg); console.log(rst); </script>
^ $ 功能:
<script type="text/javascript"> var reg = /^banana/; //出现在目标开头 var str = "monkey like banana"; //结果:null var str = "banana like monkey"; //结果:["banana", index: 0, input: "banana like monkey"] var reg = /banana$/; //出现在目标结尾 var str = "monkey like banana"; //结果:["banana", index: 12, input: "monkey like banana"] var str = "banana like monkey"; //结果:null var reg = /13[0-9]{9}/; //{9}严格出现九次 var str = "13837264738"; //结果:["13837264738", index: 0, input: "13837264738"] var str = "13837264738heihei"; //结果:["13837264738", index: 0, input: "13837264738heihei"] var reg = /^13[0-9]{9}$/; //{9}严格出现九次 var str = "13837264738"; //结果:["13837264738", index: 0, input: "13837264738"] var str = "ddd13837264738heihei"; //结果:null //字符串.match(正则) var rst = str.match(reg); console.log(rst); </script>
() 功能:
<script type="text/javascript"> var reg = /(go)+gle/; var str = "gogogogogle"; //结果:["gogogogogle", "go", index: 0, input: "gogogogogle"] var str = "gooooogle"; //结果:null var reg = /<span>(.*)<\/span>/; //()称为模式单元 var str = "<div><span>杨勇</span><a>yangyong@163.com</a></div>"; //结果:(2) ["<span>杨勇</span>", "杨勇", index: 5, input: "<div><span>杨勇</span><a>yangyong@163.com</a></div>"] //字符串.match(正则) var rst = str.match(reg); console.log(rst); console.log(rst[1]); </script>
2、模式修正符
var 模式名称 = /模式内容/模式修正符<script type="text/javascript"> var reg = /[a-z]/; var str = "helloBEIJING"; //结果:["h", index: 0, input: "hello BEIJING"] var reg = /[a-z]+/; var str = "helloBEIJING"; //结果:["hello", index: 0, input: "hello BEIJING"] var reg = /[a-z]+/i; //i忽略大小写 var str = "helloBEIJING"; //结果:["helloBEIJING", index: 0, input: "helloBEIJING"] var reg = /[0-9]+/; var str = "2015-03-23 17:30:20"; //结果:["2015", index: 0, input: "2015-03-23 17:30:20"] var reg = /[0-9]+/g; var str = "2015-03-23 17:30:20"; //结果:(6) ["2015", "03", "23", "17", "30", "20"] var reg = /[a-z]+[0-9]+/; var str = "XiangGang1997Aomen1999"; //结果:["ang1997", index: 6, input: "XiangGang1997Aomen1999"] var reg = /[a-z]+[0-9]+/ig; var str = "XiangGang1997Aomen1999"; //结果:(2) ["XiangGang1997", "Aomen1999"] //字符串.match(正则) var rst = str.match(reg); console.log(rst); console.log(rst[1]); </script>
3、模式单元重复匹配
<script type="text/javascript"> var reg = /([0-9]+-([0-9]+-[0-9]+)) ((([0-9]+):[0-9]+):[0-9]+)/; var str = "2017-08-12 15:48:30"; //结果:(6) ["2017-08-12 15:48:30", "2017-08-12", "08-12", "15:48:30", "15:48", "15", index: 0, input: "2017-08-12 15:48:30"] //字符串.match(正则) var rst = str.match(reg); console.log(rst); //console.log(rst[1]); </script>
相关文章推荐
- JavaScript正则表达式——预定义类匹配常见的字符类
- JavaScript 中正则表达式的定义及使用
- javascript正则表达式定义(语法)总结
- JavaScript之基础-10 JavaScript 正则表达式(概述、定义正则、RegExp对象、用于模式匹配的String方法)
- Javascript 正则表达式——定义
- javascript学习之 正则表达式 (23)——字符集
- MySQL 正则表达式 预定义字符集
- javaScript 正则表达式定义
- javascript正则表达式(2)——JS预定义类及边界
- JavaScript 定义正则表达式的两种形式:RegExp(),正则表达式直接量
- javascript 定义正则表达式
- JavaScript:正则表达式 分组
- JavaScript正则表达式(转发)
- javascript中使用正则表达式
- JavaScript正则表达式
- JavaScript正则表达式实例
- 前端学习:javascript正则表达式及前端组件
- 精通 JavaScript中的正则表达式
- Javascript中使用正则表达式替换回车符
- JavaScript 正则表达式上——基本语法