正则表达式基础

发布时间:2024-08-31 点击:68
正则表达式
regular expression 使用单个字符串描述、匹配一系列符合某个句法规则的字符串
.代表任意字符
代表一个或多个
()可以对其分组,$1可以获取分组的内容
\\\\d代表数字
{}中可以写个数
[]中的元素是或的关系
^标示开头
$表示结尾
\\\\b代表单词边界
var reg = / \\\\bis\\\\b /g; 匹配is字符
g代表global 全局替换,不添加的话,搜索到第一个就匹配停止了
i ignore case忽略大小写,默认大小写敏感
mmultiple lines多行搜索 将字符串中的换行符也当做一行
元字符
原义文本字符
例如: a b c
元字符
在正则表达式中有特殊含义的非字母字符
* ? $ ^ . | \\\\ () {} []
字符类
[] 来构建一个简单的类,所谓的类是指符合某些特性的对象,是一个泛指而不是特指某个对象
[abc]就是有其中的任意一个即可
字符类取反
加上^符号
[^abc]匹配abc以外的字符
范围类[a-z]来表示从a到z的任意字符这是个闭区间 也表示a和z的本身如果想匹配横线,可以直接在后边加一个 [a-b-]js预定义类
字符等价类含义.[^\\\\r\\\\n]除了回车和换行符以外的所有字符\\\\d[0-9]数字字符\\\\d[^0-9]非数字字符\\\\s[\\\\t\\\\n\\\\x0b\\\\f\\\\r]空白符\\\\s[^\\\\t\\\\n\\\\x0b\\\\f\\\\r]非空白符\\\\w[a-za-z_0-9]单词数字(字母数字下划线)\\\\w[^a-za-z_0-9]非单词数字边界
字符含义^以xx开始$以xx结束\\\\b单词边界\\\\b非单词边界量词
字符含义?出现零次或者一次(最多出现一次) 出现一次或多次(至少出现一次)*出现零次或多次(任意次){n}出现n次{n,m}出现n到m次{n,}至少出现n次贪婪与懒惰模式
>'12345678'.replace(/\\\\d{3,6}/,'x').>"x78"正则表达式默认会最多去匹配
想使用飞贪婪模式 在量词后加上?即可
>'12345678'.replace(/\\\\d{3,6}?/,'x').>"x45678"分组
beyond{3} 是把d出现三次 量词作用于紧挨着的单词(beyond){3}整个单词出现了三遍反向引用
>'2017-06-29'.replace(/(\\\\d{4})-(\\\\d{2})-(\\\\d{2})/,'$3/$2/$1').>"29/06/2017"将每个小括号中的内容作为一个对象,可以使用这个对象
忽略分组
如果不想捕获某个分组,在分组内加上?:即可
推荐教程:《js教程》

如何解决PHP trim乱码问题
云服务器怎么双机热备
阿里云服务器怎么假设邮箱
mac密码忘了怎么重置 苹果电脑忘记开机密码怎么办
正品信任度 网易考拉位居跨境电商行业之首
域名转不进来-其他问题
打算买一台云服务器
云服务器挂卡是什么