《javaScript高级程序设计》阅读:14-正则中的转义字符(二)

特殊字符想要表达他们本身的含义的话就要加上转义符号 \

  • 边界符 / 需要转义
  • var str = '// 我是注释'
    var pattern = /\/\//
    console.log(pattern.exec(str))
    VM54:3 ["//", index: 0, input: "// 我是注释", groups: undefined]
  • 反斜杠的转义
  • var str = '\\\\'
    // 上面是用反斜杠转义了两个反斜杠
    console.log(str)
    VM56:3 \\
var str = '\\\\'
    var pattern = /\\/
    console.log(pattern.exec(str))
VM58:3 ["\", index: 0, input: "\\", groups: undefined]
  • 其他的转义符使用:

    • \n 换行
    • \t Tab键
    • 匹配汉字的时候会用到uncode编码 \u4e00-\9fa5
  • 字符类

    • []: 匹配中括号里面的任意一个字符。里面可以填写任意多的字符。先匹配到谁就是谁。“弱水三千,只取一瓢”
    • [^js]: ^ 表示取反。除了js之外的任意字符。
    • [a-z]: 可以取任意一范围。
    • 匹配汉字:
var str = 'javascript'
    var pattern = /[js]/
    console.log(pattern.exec(str))
VM60:3 ["j", index: 0, input: "javascript", groups: undefined]
undefined
var str = 'javascript'
    var pattern = /[^js]/
    console.log(pattern.exec(str))
VM62:3 ["a", index: 1, input: "javascript", groups: undefined]
var str = 'javascript'
    var pattern = /[a-c]/
    console.log(pattern.exec(str))
VM64:3 ["a", index: 1, input: "javascript", groups: undefined]
匹配汉字
var str = '钱'
    var pattern = /[\u4e00-\u9fa5]/
    console.log(pattern.exec(str))
VM67:3 ["钱", index: 0, input: "钱", groups: undefined]
匹配大写
var str = 'Jjavascript'
    var pattern = /[a-zA-Z]/
    console.log(pattern.exec(str))
VM69:3 ["J", index: 0, input: "Jjavascript", groups: undefined]
匹配数字:/[0-9]/
匹配全部:/[a-zA-Z0-9@_]/

猜你喜欢

转载自blog.csdn.net/weixin_40814356/article/details/80488347