. 匹配单个任意字符 可以匹配:tno,t#o,teo等等。不可以匹配:tnno,to,Tno,t正o等
    [] 只有方括号里面指定的字符才参与匹配,也只能匹配单个字符 t[abcd]n 只可以匹配:tan,tbn,tcn,tdn。不可以匹配:thn,tabn,tn等
    | 相当与“或”,可以匹配指定的字符,但是也只能选择其中一项进行匹配 t(a|b|c|dd)n 只可以匹配:tan,tbn,tcn,tddn。不可以匹配taan,tn,tabcn等。

    限定符
    限定符后边添加一个?表示非贪婪模式(最小匹配)

    * 0次或者多次
    + 1次或者多次,等价于{1,}
    0次或者1次,等价于{0,1}
    {n} 恰好n次
    {n,} 至少匹配n次
    {n,m} 从n次到m次
    - 标识一个范围
    \ 标识下一个字符标记为特殊字符、或者一个原意字符、或一个向后引用、或一个八进制转义符
    ^ 1 匹配字符串开始的位置
    2 表示否,如果在[]内,表示不想匹配的字符
    $ 匹配输入字符串结束的位置;
    \S [^\t\n\r\f],非空字符
    \s [\t\n\r\f],空字符(只可以匹配一个空格、制表符、回车符、换页符;不可以匹配自己输入的多个空格)
    \r 空格符,与\n、\tab相同
    \d [0-9]
    \D [^0-9] ,不能是0-9
    \w [0-9A-Z_a-z],匹配包括下划线的任何单词字符
    \W [^0-9A-Z_a-z]
    \b 匹配一个单词边界,也就是指单词和空格间的位置
    \B 匹配非单词边界
    (pattern) 匹配 pattern 并获取这一匹配。所获取的匹配可以从产生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中则使用 $0…$9 属性。要匹配圆括号字符,请使用 ‘\(‘ 或 ‘\)’。
    (?:pattern) 匹配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 “或” 字符 (|) 来组合一个模式的各个部分是很有用。例如, ‘industr(?:y|ies) 就是一个比 ‘industry|industries’ 更简略的表达式。
    (?=pattern) 正向肯定预查(look ahead positive assert),在任何匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如,”Windows(?=95|98|NT|2000)”能匹配”Windows2000”中的”Windows”,但不能匹配”Windows3.1”中的”Windows”。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。
    (?!pattern) 正向否定预查(negative assert),在任何不匹配pattern的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如”Windows(?!95|98|NT|2000)”能匹配”Windows3.1”中的”Windows”,但不能匹配”Windows2000”中的”Windows”。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。
    (?<=pattern) 反向(look behind)肯定预查,与正向肯定预查类似,只是方向相反。例如,”(?<=95|98|NT|2000)Windows”能匹配”2000Windows”中的”Windows”,但不能匹配”3.1Windows”中的”Windows”。
    (?<!pattern) 反向否定预查,与正向否定预查类似,只是方向相反。例如”(?<!95|98|NT|2000)Windows”能匹配”3.1Windows”中的”Windows”,但不能匹配”2000Windows”中的”Windows”。