code: public static final int[] getCode(String nameOrAbbrOrLocale) {
          boolean triedCode = false;
          if (nameOrAbbrOrLocale.indexOf('_') < 0 && nameOrAbbrOrLocale.indexOf('-') < 0) {
              int propNum = UCharacter.getPropertyValueEnumNoThrow(UProperty.SCRIPT, nameOrAbbrOrLocale);
              if (propNum != UProperty.UNDEFINED) {
                  return new int[] {propNum};
              }
              triedCode = true;
          }
          int[] scripts = findCodeFromLocale(new ULocale(nameOrAbbrOrLocale));
          if (scripts != null) {
              return scripts;
          }
          if (!triedCode) {
              int propNum = UCharacter.getPropertyValueEnumNoThrow(UProperty.SCRIPT, nameOrAbbrOrLocale);
              if (propNum != UProperty.UNDEFINED) {
                  return new int[] {propNum};
              }
          }
          return null;
      }
docs: Gets the script codes associated with the given locale or ISO 15924 abbreviation or name.
  Returns MALAYAM given "Malayam" OR "Mlym".
  Returns LATIN given "en" OR "en_US"
  
  <p>Note: To search by short or long script alias only, use
  {@link #getCodeFromName(String)} instead.
  That does a fast lookup with no access of the locale data.
  
  @param nameOrAbbrOrLocale name of the script or ISO 15924 code or locale
  @return The script codes array. null if the the code cannot be found.