3
Pattern pattern = Pattern.compile("(\\S+)\\s+(.+?)\\s+(\\S+)");
Matcher matcher = pattern.matcher("IA HEART RATE 184");
所以我的問題是爲什麼上面的模式捕獲組2中的心率。不應該'。+'匹配一個或多個字符,包括空格字符,所以不應該組2捕獲心臟,因爲它後面跟着一個空格,應該匹配(。+?)\ s +正確?那麼它爲什麼與心率相匹配?有人可以幫助我澄清我對這個正則表達式的理解嗎?
P.S.我正在使用火柴()
那麼爲什麼它剝離的空間不應該在第2組中捕獲空間還是隻有被括起來的東西總是被捕獲? – Phoenix
@Phoenix:Re:「只有括號內容總是被捕獲」:正確。 '(...)'符號創建一個捕獲組。 – ruakh