2016-11-09 38 views
1

我有一個文本思科配置。 我應該匹配的主機名行是「125-hostname billdevice」。 我正在使用下面的模式,但不符合true。思科配置線的Java模式匹配

Pattern ciscohostname = Pattern.compile("^[0-9999999]-hostname"); 
Matcher matcherx = ciscohostname.matcher(BlockIndexList.get(k).toString()); 

我該如何匹配這條線。

回答

0

你想要的是

"^[0-9]+-hostname" 

這意味着: 匹配,如果字符串中的[0-9],然後字符串「-hostname」(又名位)範圍至少一個字符開始

+0

謝謝,現在的作品 – ivbtar

+0

@ivbtar沒有問題。接受答案和/或upvote。 – Antoniossss

0

正如您所指定的範圍在你的代碼(即9999999),那麼你可以使用這個表達式

^[0-9]{1,7}-hostname 

這將Ë確保只有1到7位數字匹配,並且任何超過該數字的數字都將被消除。

0-hostname billdevice   //match 
9999999-hostname billdevice //match 
10000000-hostname billdevice //no match 

DEMO