正则表达式

也叫规则表达式, 按照一定的规则组成的一个表达式, 这个表达式的作用主要是匹配字符串的
 
"我的电话:10086,他的电话:10010,你的电话:10000" 
正则表达式, 把这个字符串中的所有的数字找到
 
正则表达式的作用: 匹配字符串的
在大多数编程语言中都可以使用 
 
正则表达式的组成: 是由元字符或者是限定符组成的一个式子
 

元字符:

 
.  表示的是:除了\n以外的任意的一个字符   "fdsfs238"
[] 表示的是:范围,  [0-9] 表示的是0到9之间的任意的一个数字,  "789" [0-9]
[1-7] 表示的是1到7之间的任意的一个数字
[a-z] 表示的是:所有的小写的字母中的任意的一个
[A-Z] 表示的是:所有的大写的字母中的任意的一个
[a-zA-Z] 表示的是:所有的字母的任意的一个
[0-9a-zA-Z] 表示的是: 所有的数字或者是字母中的一个
[] 另一个函数: 把正则表达式中元字符的意义干掉    [.] 就是一个.
| 或者     [0-9]|[a-z] 表示的是要么是一个数字,要么是一个小写的字母
() 分组 提升优先级   [0-9]|([a-z])|[A-Z]
([0-9])([1-5])([a-z]) 三组, 从最左边开始计算
(()(()))
 
 

都是元字符,但是也可以叫限定符,下面的这些

  *   表示的是:前面的表达式出现了0次到多次
  [a-z][0-9]* 小写字母中的任意一个 后面是要么是没有数字的,要么是多个数字的
  "fdsfs3223323"  [a-z][0-9]*
    *
  +  表示的是:前面的表达式出现了1次到多次
  [a-z][9]+  小写字母一个后面最少一个9,或者多个9
  "fesfewww9fefds"
    *
  ?  表示的是:前面的表达式出现了0次到1次,最少是0次,最多1次 ,另一个含义:阻止贪婪模式
  [4][a-z]? "1231234ij"
限定符:限定前面的表达式出现的次数
{} 更加的明确前面的表达式出现的次数
{0,} 表示的是前面的表达式出现了0次到多次,和 *一样的
{1,} 表示的是前面的表达式出现了1次到多次,和 +一样的
{0,1} 表示的是前面的表达式出现了0次到1次,和 ?一样的
{5,10} 表示的是前面的表达式出现了5次到10次
{4} 前面的表达式出现了4次
{,10} 错误的========不能这么写
^ 表示的是以什么开始,或者是取非(取反) ^[0-9] 以数字开头
^[a-z] 以小写字母开始
[^0-9] 取反,非数字
[^a-z] 非小写字母
[^0-9a-zA-Z_]
$ 表示的是以什么结束   [0-9][a-z]$  必须以小写字母结束
^[0-9][a-z] 相当于是严格模式   "3f2432e"  "4f"
 \d 数字中的任意一个,
 \D 非数字中的一个
 \s 空白符中的一个
 \S 非空白符
 \w 非特殊符号
 \W 特殊符号
 \b 单词的边界
 "what are you no sha lei"
 
  . 除了\n以外的任意一个单个字符
[] 范围
() 分组,提升优先级
| 或者
* 0-多次
+ 1-多次
? 0-1次
{0,} 和*一样
{1,} 和+
{0,1}
\d 数字中的一个
\D 非数字
\s 空白符
\S 非空白符
\W 特殊符号
\w 非特殊符号 _
^ 取反,以什么开始
$ 以什么结束
\b 单词边界

JS高级---正则表达式的更多相关文章

  1. JS高级---正则表达式其他方法的使用

    正则表达式其他方法的使用 正则表达式中:g 表示的是全局模式匹配 正则表达式中:i 表示的是忽略大小写 var str = "中国移动:10086,中国联通:10010,中国电信:10000 ...

  2. JS高级---正则表达式练习身份证号码

    写正则表达式, 根据字符串来写正则表达式进行匹配 经验: 1.找规律  2.不要追求完美   身份证的正则表达式 15位或者18位 ([1-9][0-9]{14})|([1-9][0-9]{16}[0 ...

  3. js常用正则表达式2

    字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界. -或- 对 ...

  4. JS 之正则表达式

    字符 含意 \ 做为转意,即通常在"\"后面的字符不按原来意义解释,如/b/匹配字符"b",当b前面加了反斜杆后/\b/,转意为匹配一个单词的边界. -或- 对 ...

  5. js课程 4-12 js中正则表达式如何使用

    js课程 4-12 js中正则表达式如何使用 一.总结 一句话总结: 1.js正则表达式手册取哪里找? w3cschool或者菜鸟教程->找到js正则表达式->完整的RegExp参考手册这 ...

  6. JS高级前端开发群加群说明及如何晋级

    JS高级前端开发群加群说明 一.文章背景: 二. 高级群: 三. 加入方式: 四. 说明:   一.文章背景: 去年年初建了几个群,在不经意间火了,一直排在“前端开发”关键字搜索结果第一名.当然取得这 ...

  7. 前端进阶试题css(来自js高级前端开发---豪情)既然被发现了HOHO,那我就置顶了嘿嘿!觉得自己技术OK的可以把这套题目做完哦,然后加入高级前端的社区咯

    http://www.cnblogs.com/jikey/p/4426105.html js高级前端开发加群方法(此群很难进,里面纯技术,严禁广告,水群) 完整题目做完发邮箱(jikeytang@16 ...

  8. Node.js高级编程读书笔记Outline

    Motivation 世俗一把,看看前端的JavaScript究竟能做什么. 顺便检验一下自己的学习能力. Audience 想看偏后台的Java程序员关于前端JavaScript的认识的职业前端工程 ...

  9. 读JS高级——第五章-引用类型 _记录

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

随机推荐

  1. Java基础之一、入门知识

    资料来源于<明解 Java>日本作者 写的很详细 1:命令---java 类名 该命令不是去执行类名.class文件(文件名和类名有可能不一致),切记是表示执行具体的类: 2:“字符”+数 ...

  2. 关于js获取元素在屏幕中的位置的方法

    针对我们获取元素在页面中的位置的问题,我们还是用老师一峰老师的方法来解决吧 下面上HTML代码 <div class="left_footer"> <p data ...

  3. window10家庭版解决IIS中万维网服务的安全性中无Windows身份验证

    首先在左下角输入cmd搜索->命令提示符->以管理员身份运行->然后复制下面一段命令: dism /online /norestart /add-package:%SystemRoo ...

  4. 【python基础语法】第7天作业练习题

    import keyword ''' # 第一题:简单题 1.什么是全局变量? 2.什么是局部变量? 3.函数内部如何修改全局变量(如何声明全局变量 )? 4.写出已经学过的所有python关键字,分 ...

  5. 第6章.BitArray类

    参考链接: https://www.cnblogs.com/wang7/archive/2012/04/13/2446353.html https://www.runoob.com/csharp/cs ...

  6. 剑指offer-面试题50-第一个只出现一次的字符-哈希表

    /* 题目: 求字符串第一个只出现一次的字符. */ /* 思路: 使用map遍历两次,第一次计数,第二次找到计数为1的第一个字符. */ #include<iostream> #incl ...

  7. 星星评分-依赖jquery

    https://pan.baidu.com/s/1UWJFh-QJOjSB_yqA8VgHIQ

  8. c++ 浮点数小数位

    . double f = 3.123456789; . cout<<f<<endl; // 输出3.12346 (包含整数和小数,且四舍五入) . cout<<se ...

  9. Lucene使用IKAnalyzer分词

    1.分析器    所有分析器最终继承的类都是Analyzer        1.1 默认标准分析器:StandardAnalyzer            在我们创建索引的时候,我们使用到了Index ...

  10. CMake 复制文件方法

    我们经常会遇到将第三方库文件复制到项目运行时文件夹,或者将子项目生成的库文件复制到项目运行时文件夹的情况,本文介绍FILE-COPY.add_custom_command.ADD_CUSTOM_TAR ...