package me.km.chatchannel; import java.util.regex.Pattern; public enum TextColor { // vanilla stuff BLACK('0'), DARK_BLUE('1'), DARK_GREEN('2'), DARK_AQUA('3'), DARK_RED('4'), DARK_PURPLE('5'), GOLD('6'), GRAY('7'), DARK_GRAY('8'), BLUE('9'), GREEN('a'), AQUA('b'), RED('c'), LIGHT_PURPLE('d'), YELLOW('e'), WHITE('f'), OBFUSCATED('k'), BOLD('l'), STRIKETHROUGH('m'), UNDERLINE('n'), ITALIC('o'), RESET('r'), // http://chir.ag/projects/name-that-color/ // new colors DARK_BROWN('g'), LIGHT_BROWN('h'), MIDNIGHT_BLUE('i'), BAHAMA_BLUE('j'), LIMEADE('p'), PISTACHIO('q'), AZURE_RADIANCE('s'), MALIBU('t'), OREGON('u'), TENN('v'), BUDDHA_GOLD('w'), SUPERNOVA('x'), POMPADOUR('y'), ELECTRIC_VIOLET('z'); private static final Pattern FORMATTING_CODE_PATTERN = Pattern.compile("(?i)\u00a7[0-9A-Za-z]"); private final String pattern; private TextColor(char c) { this.pattern = "ยง" + c; } @Override public String toString() { return pattern; } public static String getTextWithoutFormattingCodes(String text) { return FORMATTING_CODE_PATTERN.matcher(text).replaceAll(""); } }