正则表达式笔记


title: RegExpNote
date: 2019-07-24 14:06:57
tags:
---

正则表达式中的特殊字符

字符含义
\转义:在非特殊字符之前的反斜杠表示下一个字符是特殊的,不能从字面上解释
^匹配输入的开始(定位符)eg:/^a/ 将会匹配以a开头的词
$匹配输入的结束(定位符)eg:/^a/将会匹配最后一个字母是a的词 ,bccca
*匹配前一个表达式0次或者多次
+匹配前一个表达式1次或者多次
匹配前一个表达式1次或者0次,如果紧跟在任何量词*、+、?或{}之后,将会使量词变为非贪婪的(匹配尽量少的字符)和缺省使用的贪婪模式(匹配尽可能多的字符)正好相反。eg:对于“123abc"应用/\d+/将会返回”123“,如果使用/\d+?/将会返回”1“
.匹配除换行符之外的任何单个字符
(x)匹配x并且记住匹配项 ,x可以是一串字符(包括表达式)eg: "abc def abc def" 匹配模式/(abc) (def) \1 \2/ 其中\1,\2就是记住的匹配项(abc)和(def)
(?:x)匹配x并且不记住匹配项,x可以是一串字符(包括表达式)
x(?=y)匹配‘x'仅仅当'x'后面紧跟着'y'
(?<=y)x匹配'x'仅仅当’x'前面是'y'
x(?!y)匹配'x'仅仅当'x'后面不是y
(?<!y)x匹配'x'仅仅当'x'前面不是y
x|y匹配'x'或者'y'
{n}n是一个整数,匹配了前面一个字符刚好发生了n次
{n,m}n和m都是整数,匹配前面的字符至少发生n次,最多m次
[xyz]一个字符集合,匹配括号中的任意字符
[^xyz]一个反字符集合,匹配除括号中的字符之外的任意字符
[\b]匹配一个退格
\b匹配一个词的边界 /\bm/ 匹配”moooo"中的m,/o\b/匹配“moooo”中的最后一个o
\B匹配一个非单词边界,匹配一个前后字符都是相同类型位置,eg:/\B../匹配“noonday"中的"oo",/y\B../匹配"possibly yesterday"中的”yes"
\cx当X是处于A-Z之间的字符的时候,匹配字符串中的一个控制符,eg:/\cM/匹配字符串中的control-M(U+000D)
\d匹配一个数字==[0-9]
\D匹配一个非数字==[ ^ 0-9]
\f匹配一个换页符
\n匹配一个换行符
\r匹配一个回车符
\s匹配一个空白字符,包括空格,制表符,换页符,换行符
\S匹配一个非空白字符
\t匹配一个水平制表符
\v匹配一个垂直制表符
\w匹配一个单字字符(字母、数字、下划线)
\W匹配一个非单字字符
\1,\2,\3,\4,\n()中捕获的字符
\0匹配null字符
\xhh与代码hh匹配字符(两个十六进制数字)
\uhhhh与代码hhhh匹配字符(4个十六进制数字)
\u{hhhhh}使用Unicode值hhhh匹配字符(十六进制)

正则表达式标志

标志描述
g全局搜索
i不区分大小写
m多行搜索
y执行粘贴搜索,匹配从目标字符串的当前位置开始,可以使用y标志

正则表达式的使用方法

方法描述
exec一个在字符串中执行查找匹配的RegExp方法,它返回一个数组(未匹配到则返回null)。
test一个在字符串中测试是否匹配的RegExp方法,它返回true或false。
match一个在字符串中执行查找匹配的String方法,它返回一个数组或者在未匹配到时返回null。
search一个在字符串中测试匹配的String方法,它返回匹配到的位置索引,或者在失败时返回-1。
replace一个在字符串中执行查找匹配的String方法,并且使用替换字符串替换掉匹配到的子字符串。
split一个使用正则表达式或者一个固定字符串分隔一个字符串,并将分隔后的子字符串存储到数组中的String方法。

转载于:https://www.cnblogs.com/lihuidong/p/11281831.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值