创建正则表达式

js中的正则包含在两个斜杠之间:/abc+v/

正则中的特殊字符

\:

1.当后面不是特殊字符时表示字符边界

2.当后面是特殊字符时表示转义

^:

1.匹配首位,例如,/^A/ 并不会匹配 "an A" 中的 'A',但是会匹配 "An E" 中的 'A'。

$:

1.匹配结束。例如,/t$/ 并不会匹配 "eater" 中的 't',但是会匹配 "eat" 中的 't'。

*:

1.匹配前面表达式>=0次,等价于{0,}。例如,/bo*/ 会匹配 "A ghost boooooed" 中的 'booooo' 和 "A bird warbled" 中的 'b',但是在 "A goat grunted" 中不会匹配任何内容。

+:

1.匹配前面一个表达式 1 次或者多次。等价于 {1,}。

?:

1.匹配前面一个表达式 0 次或者 1 次。等价于 {0,1}。例如,/e?le?/ 匹配 "angel" 中的 'el'、"angle" 中的 'le' 以及 "oslo' 中的 'l'。

.:

1.默认匹配换行符之外的任何一个字符。例如,/.n/ 将会匹配 "nay, an apple is on the tree" 中的 'an' 和 'on',但是不会匹配 'nay'。

2.如果 s ("dotAll") 标志位被设为 true,它也会匹配换行符。

(x):
1.它会匹配 'x' 并且记住匹配项。其中括号被称为捕获括号

(?:x):

1.不记住匹配项

x(?=y):

1.当x后面有y时匹配x

(?<=y)x:
1.与上面类似,反了过来

x(?!y):
1.与前两项类似,不过是后方不跟。

x|y:
1.匹配x或y

{n}:
1.n为正整数,匹配前面字符n次

2.{n,m}表示至少匹配n次,最多m次。

[]:

匹配括号中内容,可使用^表示不匹配,也可以使用-表示范围

例如,[^abc] 和 [^a-c] 是一样的。他们匹配"brisket"中的‘r’,也匹配“chop”中的‘h’。

例如,[abcd] 和[a-d]是一样的。他们都匹配"brisket"中的‘b’,也都匹配“city”中的‘c’。/[a-z.]+/ 和/[\w.]+/与字符串“test.i.ng”匹配。

[\b]:
匹配一个退格

\b:

匹配一个词的边界

使用"moon"举例:
/\bm/匹配“moon”中的‘m’;
/oo\b/并不匹配"moon"中的'oo',因为'oo'被一个“字”字符'n'紧跟着。
/oon\b/匹配"moon"中的'oon',因为'oon'是这个字符串的结束部分。这样他没有被一个“字”字符紧跟着。

\B:

匹配一个非单词边界

例如,/\B../匹配"noonday"中的'oo', 而/y\B../匹配"possibly yesterday"中的’yes‘

\d:

相当于[0-9],匹配一个数字

\D:

匹配一个非数字

\s:
匹配一个空白字符,包括空格、制表符、换页符和换行符。

\S:

匹配一个费空白字符

\w:

匹配一个字符(字母、数字或者下划线)。等价于 [A-Za-z0-9_]

\W:
匹配一个非单字字符。

\0:

匹配NULL

通过标志进行高级搜索

g 全局搜索。
i 不区分大小写搜索。
m 多行搜索。
s 允许 . 匹配换行符。
u 使用unicode码的模式进行匹配。
y 执行“粘性(sticky)”搜索,匹配从目标字符串的当前位置开始。

最新文章

  1. There is no getter for property named &#39;useName&#39; in &#39;class cn.itcast.mybatis.pojo.User&#39;
  2. Apache-Shiro+Zookeeper系统集群安全解决方案之会话管理
  3. Time, Clocks, and the Ordering of Events in a Distributed System
  4. [转]NHibernate之映射文件配置说明
  5. Python-Day4 Python基础进阶之生成器/迭代器/装饰器/Json &amp; pickle 数据序列化
  6. Unity3D 导入贴图、模型等资源文件时自动设置参数
  7. Qt入门(12)——Qt国际化
  8. AS 断点调试 debug
  9. request.getparameter和 request.getattribute的差别
  10. 用户权限模块之spring security
  11. kbengine所有的demo源代码
  12. Iterator、for..of,for...in和自定义遍历器**
  13. C#安装Telnet
  14. spark2.1源码分析2:从SparkPi分析一个job的执行
  15. Bootstrap table方法,Bootstrap table事件,配置
  16. Java基础&amp;面向对象(二)
  17. 腾讯云Unbuntu服务器安装桌面环境
  18. JDBC(5)—DatabaseMetaData
  19. 02:saltstack-api使用详解
  20. Oracle中如何写存储过程

热门文章

  1. spring的事务是如何回滚的、事务传播?
  2. 图解|12张图告诉你MySQL的主键查询为什么这么快
  3. python-xlutils模块-修改excel
  4. C# Debug和Trace:输出调试信息
  5. 彻底关闭 win10家庭版 杀毒软件windows defender
  6. Map格式-joson格式
  7. 《Java从入门到精通》学习笔记(详细)
  8. FTP服务器日志解析
  9. centos7 配置 zabbix 3 &amp; apache , nginx 与php, mysql 的交互(基本)
  10. LeetCode-039-组合总和