private static boolean isAfterSoftDotted(String src,int index){
  int ch;
  int cc;
  for (int i=index; i > 0; i-=Character.charCount(ch)) {
    ch=src.codePointBefore(i);
    if (isSoftDotted(ch)) {
      return true;
    }
 else {
      cc=Normalizer.getCombiningClass(ch);
      if ((cc == 0) || (cc == COMBINING_CLASS_ABOVE)) {
        return false;
      }
    }
  }
  return false;
}

private static boolean isAfterSoftDotted ( String src , int index ) { int ch ; int cc ; for ( int i = index ; i > 0 ; i -= Character . charCount ( ch ) ) { ch = src . codePointBefore ( i ) ; if ( isSoftDotted ( ch ) ) { return true ; } else { cc = Normalizer . getCombiningClass ( ch ) ; if ( ( cc == 0 ) || ( cc == COMBINING_CLASS_ABOVE ) ) { return false ; } } } return false ; }
implements the " after_soft_dotted " condition specification : the last preceding character with combining class of zero before c was soft_dotted , and there is no intervening combining character class 230 ( above ) . regular expression : before c : [ { soft_dotted = = true } ] ( [ { cc ! = 230 } & { cc ! = 0 } ] )
