1 回答

TA貢獻1934條經驗 獲得超2個贊
如果您正在尋找對color/name(按此順序),您可以使用:(?><col=(?<color>[A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})>)?(?<text>(?><.*?>)?[^<]+)
static void extract(String string) {
? ? Pattern pattern =
? ? ? ? ? ? Pattern.compile("(?><col=(?<color>[A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})>)?(?<name>(?><.*?>)?[^<]+)");
? ? Matcher m = pattern.matcher(string);
? ? while (m.find()) {
? ? ? ? String color = m.group("color");
? ? ? ? String name = m.group("name");
? ? ? ? System.out.printf("Color %s, name %s\n", color, name);
? ? }
}
/*
Color null, name something before
Color ff00ff, name mercides> car
Color ffff00, name plates
(?><col=(?<color>[A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})>)?
是顏色,以六字符開始<col
和結束,它是可選的,所以最后有一個>
?
(?<text>(?><.*?>)?[^<]+)
名稱組,可以有另一個應答器,但最后一個字符可以是<
添加回答
舉報