美文网首页全栈(一)
正则表达式及写法、普通字符匹配及转义字符匹配、限制范围、限制开头

正则表达式及写法、普通字符匹配及转义字符匹配、限制范围、限制开头

作者: Agony_锐 | 来源:发表于2020-01-07 08:58 被阅读0次


    一、正则

    正则表达式:能让计算机读懂的字符串匹配规则

    正则表达式写法:

    var re=new RegExp('规则', '可选参数');

    var re=/规则/参数;

    普通字符匹配:

    /a/ 匹配字符 ‘a’,/a,b/ 匹配字符 ‘a,b’

    转义字符匹配:

    \d 匹配一个数字,即0-9

    \D 匹配一个非数字,即除了0-9

    \w 匹配一个单词字符(字母、数字、下划线)

    \W 匹配任何非单词字符。等价于[^A-Za-z0-9_]

    \s 匹配一个空白符

    \S 匹配一个非空白符

    \b 匹配单词边界

    \B 匹配非单词边界

    . 匹配一个任意字符,除了换行符‘\n’和回车符‘\r’

    \1 重复子项

    量词:对左边的匹配字符定义个数

    ? 出现零次或一次(最多出现一次),或指明一个非贪婪限定符

    + 出现一次或多次(至少出现一次)

    * 出现零次或多次(任意次)

    {n} 出现n次

    {n,m} 出现n到m次

    {n,} 至少出现n次

    任意一个或者多个范围 :

    [abc123] : 匹配‘abc123’中的任意一个字符

    [a-z0-9] : 匹配a到z或者0到9中的任意一个字符

    限制开头结尾

    ^ 以紧挨的元素开头

    $ 以紧挨的元素结尾

    修饰参数:

    g: global,全文搜索,默认搜索到第一个结果接停止

    i: ingore case,忽略大小写,默认大小写敏感

    m: multiple lines,多行搜索(更改^ 和$的含义,使它们分别在任意一行对待行首和行尾匹配,而不仅仅在整个字符串的开头和结尾匹配)

    常用函数:

    test:用法:正则.test(字符串) 匹配成功,就返回真,否则就返回假

    search:用法:字符串.search(正则) 匹配成功,返回位置,否则返回-1

    match:用法: 字符串.match(正则);匹配成功,就返回匹配成功的数组,否则就返回null

    replace:用法:字符串.replace(正则,新的字符串) 匹配成功的字符去替换新的字符

    正则默认规则:匹配成功就结束,不会继续匹配,区分大小写

    贪婪模式:*、+限定符都是贪婪的,因为它们会尽可能多的匹配文字,只有在它们的后面加上一个?就可以实现非贪婪或最小匹配。

    通过在 *、+ 或 ? 限定符之后放置 ?,该表达式从"贪心"表达式转换为"非贪心"表达式或者最小匹配。

    二、本地存储:cookie、localStorage、sessionStorage

    cookie:容量最大是4k,可设置访问路径,只有此路径及此路径的子路径才能访问此cookie,可设置过期时间

    jquery 设置cookie(参数:名称、值、有效期几天、路径)

    $.cookie('mycookie','123',{expires:7,path:'/'});

    jquery 获取cookie

    $.cookie('mycookie');

    localStorage:容量为5M或者更大,不会在请求时候携带传递,在所有同源窗口中共享,数据一直有效,除非人为删除,可作为长期数据。

    //设置:

    localStorage.setItem("dat", "456");

    localStorage.dat = '456';

    //获取:

    localStorage.getItem("dat");

    localStorage.dat

    //删除

    localStorage.removeItem("dat");

    sessionStorage:容量为5M或者更大,不会在请求时候携带传递,在同源的当前窗口关闭前有效

    相关文章

      网友评论

        本文标题:正则表达式及写法、普通字符匹配及转义字符匹配、限制范围、限制开头

        本文链接:https://www.haomeiwen.com/subject/jvhcactx.html