docs: public String underscore( String camelCaseWord,
                                char... delimiterChars ) {
          if (camelCaseWord == null) return null;
          String result = camelCaseWord.trim();
          if (result.length() == 0) return "";
          result = result.replaceAll("([A-Z]+)([A-Z][a-z])", "$1_$2");
          result = result.replaceAll("([a-z\\d])([A-Z])", "$1_$2");
          result = result.replace('-', '_');
          if (delimiterChars != null) {
              for (char delimiterChar : delimiterChars) {
                  result = result.replace(delimiterChar, '_');
              }
          }
          return result.toLowerCase();
      }