src/share/classes/java/util/regex/UnicodeProp.java

Print this page

        

*** 179,197 **** WORD { // \p{alpha} // \p{gc=Mark} // \p{digit} // \p{gc=Connector_Punctuation} public boolean is(int ch) { return ALPHABETIC.is(ch) || ((((1 << Character.NON_SPACING_MARK) | (1 << Character.ENCLOSING_MARK) | (1 << Character.COMBINING_SPACING_MARK) | (1 << Character.DECIMAL_DIGIT_NUMBER) | (1 << Character.CONNECTOR_PUNCTUATION)) >> Character.getType(ch)) & 1) ! != 0; } }; private final static HashMap<String, String> posix = new HashMap<>(); private final static HashMap<String, String> aliases = new HashMap<>(); --- 179,206 ---- WORD { // \p{alpha} // \p{gc=Mark} // \p{digit} // \p{gc=Connector_Punctuation} + // \p{Join_Control} 200C..200D public boolean is(int ch) { return ALPHABETIC.is(ch) || ((((1 << Character.NON_SPACING_MARK) | (1 << Character.ENCLOSING_MARK) | (1 << Character.COMBINING_SPACING_MARK) | (1 << Character.DECIMAL_DIGIT_NUMBER) | (1 << Character.CONNECTOR_PUNCTUATION)) >> Character.getType(ch)) & 1) ! != 0 || ! JOIN_CONTROL.is(ch); ! } ! }, ! ! JOIN_CONTROL { ! // 200C..200D PropList.txt:Join_Control ! public boolean is(int ch) { ! return (ch == 0x200C || ch == 0x200D); } }; private final static HashMap<String, String> posix = new HashMap<>(); private final static HashMap<String, String> aliases = new HashMap<>();
*** 210,219 **** --- 219,229 ---- posix.put("PRINT", "PRINT"); aliases.put("WHITESPACE", "WHITE_SPACE"); aliases.put("HEXDIGIT","HEX_DIGIT"); aliases.put("NONCHARACTERCODEPOINT", "NONCHARACTER_CODE_POINT"); + aliases.put("JOINCONTROL", "JOIN_CONTROL"); } public static UnicodeProp forName(String propName) { propName = propName.toUpperCase(Locale.ENGLISH); String alias = aliases.get(propName);