2012-07-17 82 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