2013-07-23 56 views
0

我有以下的正則表達式,模式的開始:正則表達式在上下文中的字符串

pattern = @"(?<=\[)[\da-f]{8}(?=\])"; 

它提取「f000000f」出來的「[f000000f]欄」正確,但它不應該匹配「富[f000000f]欄」所以我已經添加了^確定的模式的開頭:

pattern = @"^(?<=\[)[\da-f]{8}(?=\])"; 

但這種模式對兩個輸入都不起作用。

任何人都可以告訴我如何強制第一個模式只匹配在輸入字符串的開始嗎?

在此先感謝。

回答

1

你需要移動錨點的回顧后里,像這樣:

(?<=^[)[\da-f]{8}(?=])" 

否則,將不匹配[f000000f],因爲沒有你的表情的一部分「消費」的左方括號[