在Java 中,無法直接獲取正規表示式匹配數組可能會讓您感到困惑。本指南解決了這項挑戰,提供了捕獲所有符合正規表示式的字串的解決方案。
檢索這些匹配項的關鍵在於利用匹配器,它迭代地定位出現的位置:
import java.util.regex.Matcher; import java.util.regex.Pattern; List<String> allMatches = new ArrayList<>(); Matcher m = Pattern.compile("your regex expression here") .matcher(yourStringHere); while (m.find()) { allMatches.add(m.group()); }
用匹配項填充allMatches 後,您可以將其轉換為數組,如果必要:
allMatches.toArray(new String[0]);
或者,您可以考慮使用MatchResult 來簡化配對操作。像 allMatches:
public static Iterable<MatchResult> allMatches( final Pattern p, final CharSequence input) { ... }
這樣的輔助函數允許您迭代匹配,例如:
for (MatchResult match : allMatches(Pattern.compile("[abc]"), "abracadabra")) { System.out.println(match.group() + " at " + match.start()); }
提供輸出:
a at 0 b at 1 a at 3 c at 4 a at 5 a at 7 b at 8 a at 10
以上是如何在 Java 中將所有正規表示式匹配項提取到數組中?的詳細內容。更多資訊請關注PHP中文網其他相關文章!