编码+正则

作者: go_2021 | 来源:发表于2022-02-06 15:28 被阅读0次
    编码
    • 二进制: 以0b0B开头。
    • 八进制: 以数字0开头表示。
    • 十六进制:以0x0X开头表示。
    • ascii 1byte 数字,字母大小写 回车 换行等
    • base64 数字,字母大小写,+/,=做补位
    • unicode : 万国码 内存统一码 \u 4e2d\u 6587
    • utf-8: 变长 用于网络存储 &#x 4E2D;&#x 6587;
    • %编码: %e4%b8%ad%e6%96%87
      会对=&+/进行转义,避免value解析出问题。
      传输是value进行urlencode转码,否则+服务端会当做空格解析。
      比如参数是a=a+b&/=&b=bb,a为a+b&/=正常解析肯定会出问题,这对value进行转码,特殊字符都以%编码替代就可以到后端正常解析。
    正则

    特殊字符
    .除了\n外任何字符
    ^$ 一个开始一个结束 /^$/这样判断字符是否满足匹配
    ()分组捕获 反向引用 当(?:)(?=)(?<=)(?!)不进行捕获
    \代表转义符 \d数字 \s空格 \w字母
    !取反,比如不包含abc其中任意字母:![abc] js: !/[abc]/.test("r!")

    数量
    {} 范围{n}{n,m}{n,}
    [][abc] a,b或者c其中一个 [.] 相当于.
    *+?范围 {0,}{1,}{0,1} ?在+?限定符之后代表最小匹配/<.?>/
    | 或 a|b

    分组
    (a)(b) abcccc 匹配ab 然后 分组数组 0->a 1->b
    匹配环顾
    aaabbb aaa(?=bbb) 会匹配 aaa
    aaabbb aaa(?!ccc) 会匹配 aaa
    aaabbb (?>=aaa)bbb 会匹配 bbb
    aaabbb (?>!ccc)bbb 会匹配 bbb

    相关文章

      网友评论

        本文标题:编码+正则

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