1. 程式人生 > >03-非列印字元

03-非列印字元

你可以在正則表示式的特殊字元匹配非列印字元。

  • \t:匹配製表符
  • \r:匹配回車
  • \n:匹配換行
  • \a:匹配響鈴
  • \e:匹配esc鍵
  • \f:匹配分頁符

在windows中使用\r\n在結束一行,而UNIX中使用\n

3.1 行終結符(Line Breaks)

\R是一個特殊的轉義符,它將匹配所有的行終結符,也包括Unicode行終結符。相對於\r或者\n\R比較特殊的一點是它會把CRLF對作為一個整體去匹配,而不會匹配把CR和LF分開匹配(作者譯:如果他們同時出現的話)。當\R在一個CRLF對之前出現的話,單個\R

將匹配整個CRLF對。在對一個CRLF進行匹配的時候,\R不會向前回溯從而匹配到CR。\R可以匹配到單獨的CR或是單獨的LF,但是\R{2}或者\R\R不會匹配到一個CRLF對,因為第一\R已經匹配到了整個CRLF對,另一個\R就不能和任何字元匹配。

但是在一些語言中,\R的行為並不遵循這個規範。例如在java9中\R\R可以匹配一個CRLF對,在Perl中\R{2}可以匹配一個CRLF對。

\R只能向前搜尋,並且匹配一個完整的CRLF對。\r\R也可以匹配到一個CRLF對,這是因為\r匹配到了CR,而\R匹配了LF,這一規則在所有的引擎中都是一致的。

如果文章出現錯誤,請給我提Issues - -

Github地址

原文