2012-07-17 79 views
4

我沒有寫下面的正則表達式,我試圖找出它的作用。我知道它必須從政策地圖開始,並且在政策地圖和下一個政策地圖之間必須至少有一個空格。但我試圖弄清楚括號內的東西是什麼意思。我知道不管它是什麼,它必須在行的末尾。請解釋這個Java正則表達式

^policy-map\\s+([\\x21-\\x7e]{1,40})$ 

謝謝!

+1

那麼問題是什麼? 「*詳細解釋這個正則表達式*」 – Lion 2012-07-17 19:02:19

+0

我強烈推薦以下網站:http://regex101.com/r/gV1hK3 – 2012-10-01 11:00:51

回答

10

字符範圍從十六進制21到十六進制7e(基本可打印,非空白ASCII)1到40次。

+0

'[\\ x21 - \\ x7e]'通常用於描述字母數字+特殊字符 – 2012-07-17 19:03:49

+0

是的,我在這件事上增加了一個括號的評論。 – 2012-07-17 19:04:30

+1

這是我第一次看到使用十六進制編寫的正則表達式。感謝您的回答! – 2012-07-17 19:07:51

8

^開始字符串

policy-map恆定的

\s+空間

([\x21-\x7e]{1,40}) 1-40符號從\ X21到\ x7E(即可所有可打印,非空白ASCII字符包括標點符號,上和小寫字母和數字)

$字符串末尾

7
^    Start of string 
policy-map  "policy-map" 
\\s+   One or more whitespace characters 
(    Start of capture group 1 
[\\x21-\\x7e] From 1 to 40 characters in the range '\x21' to '\7E' 
)    End of capture group 1 
$    End of string