请解释这个正则表达式

Run*_*ner 1 regex perl

  ^[[:space:]]*@
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚[[:space:]]*上面正则表达式的含义.请帮忙,谢谢!

Bil*_*ill 9

[:space:]是一个POSIX character class匹配All whitespace characters, including line breaks的单词.

换句话说[:space:]是相同的\s(因为Perl 5.18 [1])

http://www.regular-expressions.info/posixbrackets.html


  1. 在5.18之前,垂直标签(U + 000B)未包括在内\s.

    $ diff -u <( unichars -au '\s' ) <( unichars -au '[[:space:]]' ) \
        && echo 'no difference'
    --- /dev/fd/63  2013-05-21 22:08:03.000000000 -0400
    +++ /dev/fd/62  2013-05-21 22:08:03.000000000 -0400
    @@ -1,5 +1,6 @@
      ---- U+00009 CHARACTER TABULATION
      ---- U+0000A LINE FEED (LF)
    + ---- U+0000B LINE TABULATION
      ---- U+0000C FORM FEED (FF)
      ---- U+0000D CARRIAGE RETURN (CR)
      ---- U+00020 SPACE
    
    Run Code Online (Sandbox Code Playgroud)