cdm/src/main/java/ucar/nc2/util/EscapeStrings.java
public static List<String> tokenizeEscapedName(String escapedName) {
    List<String> result = new ArrayList<>();
    int pos = 0;
    int start = 0;
    while (true) {
      pos = escapedName.indexOf(sep, pos + 1);
      if (pos <= 0) break;
      if ((pos > 0) && escapedName.charAt(pos - 1) != '\\') {
        result.add(escapedName.substring(start, pos));
        start = pos + 1;
      }
    }
    result.add(escapedName.substring(start, escapedName.length())); // remaining
    return result;
  }
public static List<String> tokenizeEscapedName(String escapedName) {
    List<String> result = new ArrayList<>();
    int pos = 0;
    int start = 0;
    while (true) {
      pos = escapedName.indexOf(sep, pos + 1);
      if (pos <= 0) break;
      if ((pos > 0) && escapedName.charAt(pos - 1) != '\\') {
        result.add(escapedName.substring(start, pos));
        start = pos + 1;
      }
    }
    result.add(escapedName.substring(start, escapedName.length())); // remaining
    return result;
  }
public static List < String > tokenizeEscapedName ( String escapedName ) { List < String > result = new ArrayList <> ( ) ; int pos = 0 ; int start = 0 ; while ( true ) { pos = escapedName . indexOf ( sep , pos + 1 ) ; if ( pos <= 0 ) break ; if ( ( pos > 0 ) && escapedName . charAt ( pos - 1 ) != ' ' ) { result . add ( escapedName . substring ( start , pos ) ) ; start = pos + 1 ; } } result . add ( escapedName . substring ( start , escapedName . length ( ) ) ) ; // remaining return result ; }
Tokenize an escaped name using "." as delimiter, skipping "\."

@param escapedName an escaped name
@return list of tokens
Tokenize an escaped name using . as delimiter skipping \ .