パッケージ org.opengion.fukurou.util

# クラス StringUtil

java.lang.Object
org.opengion.fukurou.util.StringUtil

public final class StringUtil extends Object
StringUtil.java は、共通的に使用される String関連メソッドを集約した、クラスです。

機能分類
  ユーティリティ
導入されたバージョン:
  JDK5.0,

- ## メソッドの概要

  修飾子とタイプ
  メソッド
  説明
  `static String`
  `array2csv(String... array)`
  String型の配列から、カンマ(,)で連結されたString を作成します。
  `static String`
  `array2line(String[] array, String separator)`
  String型の配列から、セパレーターで連結されたString を作成します。
  `static String`
  `array2line(String[] array, String separator, int start)`
  String型の配列から、セパレーターで連結されたString を作成します。
  `static String`
  `caseReplace(String target, String caseStr, boolean ignoreCase)`
  引数の AA:01 BB:02 CC:03 … 形式の、元値:新値のｽﾍﾟｰｽ区切り文字列を元に、 元値を新値に置き換えます。
  `static String`
  `coalesce(CharSequence... strs)`
  最初の null(または、ゼロ文字列、空白文字、タブや改行コード) 以外の値を返します。
  `static String`
  `code39(String value, boolean checkDigit)`
  CODE39 の 文字列を作成します。
  `static boolean`
  `contains(String key, String... vals)`
  キーワードに対して、可変長引数の文字列が、含まれているかどうかを判定します。
  `static int`
  `countChar(String value, char ch)`
  文字列に含まれる、特定の文字の個数をカウントして返します。
  `static ConcurrentMap<String,String>`
  `cssParse(String cssText)`
  簡易CSS形式のフォーマットを、Mapにセットします。
  `static String[]`
  `csv2Array(String csvData)`
  カンマ(,)で連結された String を、配列に分解して、その値を返します。
  `static String[]`
  `csv2Array(String csvData, char separator)`
  区切り文字で連結された String を、配列に分解して、その値を返します。
  `static String[]`
  `csv2Array(String csvData, char separator, int len)`
  区切り文字で連結された String を、配列に分解して、その値を返します。
  `static String[]`
  `csv2Array(String csvData, char separator, int len, String defVal)`
  区切り文字で連結された String を、配列に分解して、その値を返します。
  `static Integer[]`
  `csv2ArrayExt(String csvData, int maxNo)`
  カンマ(,)、ハイフン(-)で連結された String を、配列に分解して、その値を返す処理のスペシャル版です。
  `static String[]`
  `csv2ArrayOnly(String csvData)`
  区切り文字で連結された String を、配列に分解して、その値を返します。
  `static String`
  `csvOutQuote(String str)`
  文字列の前後のダブルクオートを取り外します。
  `static String`
  `cut(String org, int cutBytes)`
  引数から指定文字の分のバイト数で切った文字列を返します。
  `static String`
  `cut(String org, int cutBytes, String enc)`
  引数から指定文字の分のバイト数で切った文字列を返します。
  `static String`
  `deleteChar(String value, char ch)`
  所定のキャラクタコードを取り除いた文字列を作成します。
  `static Object[]`
  `enume2Array(Enumeration<?> enume)`
  Enumerationから、オブジェクト配列データを返します。
  `static Object[]`
  `enume2Array(Enumeration<?> enume, Object[] objs)`
  Enumerationから、オブジェクト配列データを返します。
  `static String`
  `escapeFilter(String input, String ignore)`
  特殊文字のエスケープを元に戻す処理です。
  `static String`
  `getReplaceEscape(String value)`
  HTML のエスケープ記号(&#xZZZZ;)をUnicode文字列に戻します。
  `static String`
  `getUnicodeEscape(CharSequence value)`
  Unicode文字列の値を HTML のエスケープ記号(&#xZZZZ;)に変換します。
  `static String`
  `htmlFilter(String input)`
  HTML上のエスケープ文字を変換します。
  `static String`
  `htmlFilter(String input, boolean flag)`
  HTML上のエスケープ文字を変換します。
  `static String`
  `intFill(int num, int su_fill)`
  整数のフォーム( 12 で、整数部 １２桁を表す)に合った新しい文字列を作り、それを返します。
  `static String`
  `intFill(String str, int su_fill)`
  整数のフォーム( 12 で、整数部 １２桁を表す)に合った新しい文字列を作り、それを返します。
  `static boolean`
  `isEmpty(CharSequence... vals)`
  引数 vals が、一つでも、null または、ゼロ文字列の場合は､true を返します。
  `static boolean`
  `isNotNull(CharSequence... vals)`
  引数 vals が、すべて、null または、ゼロ文字列、またはすべて空白文字(スペース、タブ、改行)でない場合は､true を返します。
  `static boolean`
  `isNull(CharSequence... vals)`
  引数 vals が、一つでも、null または、ゼロ文字列、またはすべて空白文字(スペース、タブ、改行)の場合は､true を返します。
  `static String`
  `iterator2line(Iterator<?> ite, String separator)`
  Iteratorから、セパレーターで連結されたString を作成します。
  `static String`
  `join(String delimiter, CharSequence... vals)`
  連結文字列を使用して、可変長引数のCharSequenceを連結して返します。
  `static String`
  `jsonFilter(String input)`
  JSON形式で出力する場合のためのエスケープ処理です。
  `static String`
  `lTrim0(String inStr)`
  文字列の前方のゼロ(０)を削除します。
  `static byte[]`
  `makeByte(String value, String encode)`
  指定の文字列をバイトコードに変換します。
  `static String`
  `makeString(byte[] byteValue, int start, int length, String encode)`
  内部で使われる byte[] から String 生成 メソッド。
  `static Object`
  `newInstance(String cls)`
  指定されたクラスローダを使って、識別id に応じた オブジェクトを作成します。
  `static String`
  `numberFormat(String inStr, int minFraction)`
  浮動小数点数について、カンマ編集を行います。
  `static boolean`
  `nval(String inStr, boolean def)`
  引数 inStr が、null または、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。
  `static double`
  `nval(String inStr, double def)`
  引数 inStr が、null または、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。
  `static int`
  `nval(String inStr, int def)`
  引数 inStr が、null または、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。
  `static long`
  `nval(String inStr, long def)`
  引数 inStr が、null または、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。
  `static String`
  `nval(String inStr, String def)`
  引数 inStr が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。
  `static String`
  `nval2(String inStr, String def)`
  引数 inStr が、null、"_"、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。
  `static String`
  `nval2(String inStr, String def, String def2)`
  引数 inStr が、null または、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。
  `static String`
  `nvalAdd(CharSequence... strs)`
  指定のCharSequence同士を連結させます。
  `static String`
  `nvalCsv(String strCsv, String def)`
  引数の CSV形式文字列 が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。
  `static double`
  `parseDouble(String value)`
  文字列をdoubleに変換します。
  `static String`
  `quoteFilter(String input)`
  JavaScript 等の引数でのクオート文字をASCII変換します。
  `static String`
  `realFill(String str, double su_fill)`
  小数点のフォームに合った新しい文字列を作り、文字列を返します。
  `static String`
  `replace(String target, String from, String to)`
  ストリングの部分文字列を,別の文字列に置換えたストリングを返します。
  `static String`
  `replaceText(String orgTxt, String prefix, String suffix, UnaryOperator<String> func)`
  変数の置き換え処理を行います。
  `static String`
  `rTrim(String str)`
  文字列の後ろのスペースを削除します。
  `static String[]`
  `rTrims(String... str)`
  文字列配列の各要素の後ろのスペースを削除します。
  `static String`
  `spanCut(String data)`
  引数からspanタグを取り除いて返します。
  `static String`
  `splitStartEnd(String org, String stStr, String edStr, Consumer<String> cons)`
  元の引数から開始文字列と終了文字列の間の文字列と、残りを連結した文字列を生成します。
  `static boolean`
  `startsChar(CharSequence data, char ch)`
  引数の文字列が、引数の char で始まるかどうか判定します[始まる場合は、true]。
  `static String`
  `stringFill(String str, int su_fill, String encode)`
  半角スペースで固定長(半角換算の数)に変換した文字列を返します。
  `static String`
  `stringKFill(String str, int su_fill, String encode)`
  全角スペースで固定長(半角換算の数)に変換した文字列を返します。
  `static String`
  `stringXFill(String str, int su_fill)`
  半角スペースで固定長(半角換算の数)に変換した文字列を返します。
  `static String`
  `tagCut(String data)`
  引数からタグを取り除いて返します。
  `static String`
  `toNumber(String str)`
  文字列の後ろから、" .0" の文字を削除した数字型文字列を返します。
  `static String`
  `urlAppend(CharSequence url1, CharSequence... urls)`
  指定のURL文字列同士を連結させます。
  `static String`
  `urlDecode(String value)`
  UTF-8 でURLエンコードされた文字列をデコードします。
  `static String`
  `urlEncode(String value)`
  UTF-8 で、URLエンコードを行います。
  `static String`
  `urlEncode2(String value)`
  UTF-8 で、ASCII以外の文字の、URLエンコードします。
  `static String`
  `valueOf(Object obj)`
  Object 引数の文字列表現を返します。
  `static String`
  `yenN2br(String input)`
  「\n」という文字列を、BRタグに変換します。

  ### クラスから継承されたメソッド java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## メソッドの詳細

  - ### urlEncode

    public static String urlEncode(String value)
    UTF-8 で、URLエンコードを行います。 このメソッドは、JDK1.4 以上でないと使用できません。
    パラメータ:
      `value` - エンコードする文字列
    戻り値:
      指定の文字コードでＵＲＬエンコードされた文字列
    関連項目:
      - `urlEncode2(String)`
    このﾒｿｯﾄﾞは、nullを返しません

  - ### urlEncode2

    public static String urlEncode2(String value)
    UTF-8 で、ASCII以外の文字の、URLエンコードします。 00 ～ 7F までのコードは、変換しません。 これは、日本語ファイル名の直リンクなど、URLエンコードが必要ですが、 http:// などのURL の場合は、':' , '/' は、エンコードしたくありません。 また、openGion では、[カラム] などの特殊な変数を渡して、処理させているので それらのキーワードも変換してほしくありません。 ただし、"%" と、";" は、変換します。
    パラメータ:
      `value` - エンコードする文字列
    戻り値:
      指定の文字コードでＵＲＬエンコードされた文字列(ASCII は省く)
    関連項目:
      - `urlEncode(String)`
    変更履歴:
      6.2.0.1 (2015/03/06) ASCII以外の文字の、URLエンコードを行う。, 6.9.0.0 (2018/01/31) 半角の中でも ':' , '/' , '?' , '=' , '&' , '.' , '_' , '~' 以外の文字は置き換えます。
    このﾒｿｯﾄﾞは、nullを返しません

  - ### urlDecode

    public static String urlDecode(String value)
    UTF-8 でURLエンコードされた文字列をデコードします。 このメソッドは、JDK1.4 以上でないと使用できません。
    パラメータ:
      `value` - デコードする文字列
    戻り値:
      デコードされた文字列
    変更履歴:
      5.4.5.0 追加

  - ### rTrim

    public static String rTrim(String str)
    文字列の後ろのスペースを削除します。 String クラスの trim()メソッドは、文字列の両方のスペースを削除しますが、 この rTrim( String ) は、後ろの半角スペースのみ、詰めます。 注意：' ' (スペース文字) より小さい文字を切り取ります。
    パラメータ:
      `str` - 元の文字列
    戻り値:
      後ろの半角スペースを詰めた、新しい文字列

  - ### toNumber

    public static String toNumber(String str)
    文字列の後ろから、" .0" の文字を削除した数字型文字列を返します。 数字型文字列は、入力文字列の後ろの スペース、小数点、ゼロを削除します。 また、先頭が、"." で始まる場合は、"0" を追加します。 例: "123.00" ⇒ "123" , ".123" ⇒ "0.123"
    パラメータ:
      `str` - 元の文字列
    戻り値:
      数字文字列化された、新しい文字列
    変更履歴:
      3.8.8.1 (2007/01/10) 新規作成

  - ### lTrim0

    public static String lTrim0(String inStr)
    文字列の前方のゼロ(０)を削除します。 先頭の０を削除するまえに、trim して、スペースを削除しておきます。 すべてがゼロ(０)の場合は、"0" を返します。 小数点( 0.01 など )の場合は、先頭の 0 がすべて消えるとまずいので、 "0." 部分は、残します。
    パラメータ:
      `inStr` - 元の文字列
    戻り値:
      前方のゼロ(０)を削除した、新しい文字列
    変更履歴:
      3.5.4.5 (2004/01/23) 新規追加

  - ### rTrims

    public static String[] rTrims(String... str)
    文字列配列の各要素の後ろのスペースを削除します。 個々の配列要素に対して、rTrim( String str ) を適用します。 元の文字列配列に直接作用するのではなく、新しい文字列配列に 結果をコピーして返します。 ただし、元の文字列配列が、null か、length == 0 の場合は、 元の文字列配列(アドレス)を返します。 注意：' ' (スペース文字) より小さい文字を切り取ります。
    パラメータ:
      `str` - 元の文字列配列(可変長引数)
    戻り値:
      後ろの半角スペースを詰めた、新しい文字列配列

  - ### csvOutQuote

    public static String csvOutQuote(String str)
    文字列の前後のダブルクオートを取り外します。 前後にダブルクオートが入っていなければ、そのままの文字列を返します。 前後に入っていない(片方のみなど)場合も、そのままの文字列を返します。 ※ 先頭に、'0 が含まれる場合は、カンマを削除します。 従来は、ダブルクオートしてから、rTrim してましたが、trim してから、 ダブルクオート外しを行います。
    パラメータ:
      `str` - 元の文字列
    戻り値:
      ダブルクオートを取り外した新しい文字列
    変更履歴:
      6.2.1.0 (2015/03/13) 先頭に、'0 が含まれる場合は、カンマを削除

  - ### makeString

    public static String makeString(byte[] byteValue, int start, int length, String encode)
    内部で使われる byte[] から String 生成 メソッド。
    パラメータ:
      `byteValue` - 変換するバイト列
      `start` - 変換開始アドレス
      `length` - 変換バイト数
      `encode` - 変換する文字エンコード
    戻り値:
      変換後文字列

  - ### makeByte

    public static byte[] makeByte(String value, String encode)
    指定の文字列をバイトコードに変換します。 引数の文字列が null の場合は、return は、byte[0] を返します。
    パラメータ:
      `value` - 変換するストリング値
      `encode` - 変換する文字エンコード
    戻り値:
      変換後文字列

  - ### stringXFill

    public static String stringXFill(String str, int su_fill)
    半角スペースで固定長(半角換算の数)に変換した文字列を返します。 半角スペース埋めは、文字が半角、全角混在でもかまいません。 内部にセットした文字列は、変化しません。
    パラメータ:
      `str` - Fill埋めする文字列
      `su_fill` - Fill埋めする文字列の長さ。(半角換算の数)
    戻り値:
      Fill埋めした新しいStringを返す。
    このﾒｿｯﾄﾞは、nullを返しません

  - ### stringFill

    public static String stringFill(String str, int su_fill, String encode)
    半角スペースで固定長(半角換算の数)に変換した文字列を返します。 半角スペース埋めは、文字が半角、全角混在でもかまいません。 内部にセットした文字列は、変化しません。
    パラメータ:
      `str` - Fill埋めする文字列
      `su_fill` - Fill埋めする文字列の長さ。(半角換算の数)
      `encode` - Fill埋めする文字列の文字エンコード
    戻り値:
      Fill埋めした新しいStringを返す。
    変更履歴:
      6.3.6.0 (2015/08/16) System.arraycopy が使える箇所は、置き換えます。

  - ### intFill

    public static String intFill(String str, int su_fill)
    整数のフォーム( 12 で、整数部 １２桁を表す)に合った新しい文字列を作り、それを返します。 実行できるのは、整数の String に対してのみです。 内部にセットした文字列は、変化しません。 桁数がオーバーする場合は、RuntimeException を throw します。 String str = StringUtil.intFill( "123",10 ); 実行結果："0000000123"
    パラメータ:
      `str` - 整数の String
      `su_fill` - フォームを表す正の数字 ( 12 で、整数部 １２桁を表す)
    戻り値:
      整数のフォームに合った文字列
    例外:
      `RuntimeException` - su_fill が、負の数か、元の文字数がフォームより長い場合、エラー
    関連項目:
      - `intFill(int,int)`
    このﾒｿｯﾄﾞは、nullを返しません

  - ### intFill

    public static String intFill(int num, int su_fill)
    整数のフォーム( 12 で、整数部 １２桁を表す)に合った新しい文字列を作り、それを返します。 実行できるのは、正の整数に対してのみです。 桁数がオーバーする場合は、オーバーしたまま返します。 String str = StringUtil.intFill( 123,10 ); 実行結果："0000000123"
    パラメータ:
      `num` - 正の整数
      `su_fill` - フォームを表す数字 ( 12 で、整数部 １２桁を表す)
    戻り値:
      整数のフォームに合った文字列
    例外:
      `RuntimeException` - su_fill または、num が、負の数の場合、エラー
    関連項目:
      - `intFill(String,int)`
    変更履歴:
      6.0.2.4 (2014/10/17) 新規追加

  - ### stringKFill

    public static String stringKFill(String str, int su_fill, String encode)
    全角スペースで固定長(半角換算の数)に変換した文字列を返します。
    パラメータ:
      `str` - Fill埋めする文字列
      `su_fill` - Fill埋めする文字列の長さ。(半角換算の数)
      `encode` - Fill埋めする文字列の文字エンコード
    戻り値:
      全角スペースでFill埋めした新しいStringを返す。

  - ### realFill

    public static String realFill(String str, double su_fill)
    小数点のフォームに合った新しい文字列を作り、文字列を返します。 現在は、小数点が頭に付いたり、最後に付く場合の対応はしていません。 フォームは、12.4 で、 000000000010.1000 という形で、ピリオドを含みます。 // 半角 整数部 10 桁 小数部 ５桁で固定長の文字を得る。 String str = StringUtil.realFill( "123.45" ,10.5 ) ; 実行結果：0000000123.45000
    パラメータ:
      `str` - 整数の String
      `su_fill` - フォームを表す実数 ( 12.4 で、整数部 １２桁、小数部 ４桁 計１７桁 )
    戻り値:
      value 小数点のフォーム文字列
    このﾒｿｯﾄﾞは、nullを返しません

  - ### replace

    public static String replace(String target, String from, String to)
    ストリングの部分文字列を,別の文字列に置換えたストリングを返します。 例えば,リターンコードを< br />に置換えて,画面上に改行表示させるが可能です。
    パラメータ:
      `target` - 元の文字列
      `from` - 置換元部分文字列
      `to` - 置換先部分文字列
    戻り値:
      置換えた文字列
    変更履歴:
      5.0.0.1 (2009/08/15) 不要なオブジェクトの生成を抑制する。

  - ### replaceText

    public static String replaceText(String orgTxt, String prefix, String suffix, UnaryOperator<String> func)
    変数の置き換え処理を行います。 変換元の文字列から、prefix と、suffix で囲まれた文字列をピックアップして、 func で指定の関数を、適用します。 変換元の文字列に、複数含まれていてもかまいません。 これは、単純な変数ではなく、${env.XXX}または、{@ENV..XXX} の XXX を環境変数に置き換えたり、 {@DATE.XXXX} を、日付文字列に置き換えたりする場合に、使用できます。 例えば、環境変数 の置き換えは、 replaceText( orgText , "${env." , "}" , System::getenv ); または、 replaceText( orgText , "{@ENV." , "}" , System::getenv ); とします。 日付関数の置き換えは、 replaceText( orgText , "{@DATE." , "}" , HybsDateUtil::getDateFormat ); とします。 orgTxt , prefix , suffix , func は必須で、null,ゼロ文字列、空白文字等の判定で、 true の場合は、変換元の文字列 をそのまま返します。
    パラメータ:
      `orgTxt` - 変換元の文字列
      `prefix` - 変換処理を行うキーワードの先頭文字列
      `suffix` - 変換処理を行うキーワードの終了文字列
      `func` - 変換処理を行う、関数型インタフェース
    戻り値:
      置換処理したテキスト
    変更履歴:
      6.9.2.1 (2018/03/12) 新規追加

  - ### caseReplace

    public static String caseReplace(String target, String caseStr, boolean ignoreCase)
    引数の AA:01 BB:02 CC:03 … 形式の、元値:新値のｽﾍﾟｰｽ区切り文字列を元に、 元値を新値に置き換えます。 これは、部分置換ではなく、完全一致で処理します。 caseStr が null や、マッチしなかった場合は、元の値を返します。 その場合、ignoreCase=true としている場合は、元の文字列 も大文字に変換されて返されます。 ゼロ文字列を元値や新値で使用することは可能ですが、スペースを使用することはできません。
    パラメータ:
      `target` - 元の文字列
      `caseStr` - 置換リスト(AA:01 BB:02 CC:03 … 形式)。null の場合は、比較しない。
      `ignoreCase` - true:大文字として比較 / false:そのまま比較
    戻り値:
      元の文字列を置き換えた結果。置換リストに存在しなければ、元の文字列を返す。
    変更履歴:
      5.7.2.3 (2014/01/31) 新規追加

  - ### array2csv

    public static String array2csv(String... array)
    String型の配列から、カンマ(,)で連結されたString を作成します。 これは，配列を表示用に変換する為のものです。 array2line( array, ",", 0 ); と同等です。
    パラメータ:
      `array` - 元の文字列配列(可変長引数)
    戻り値:
      一列に変換した文字列(引数がnullの場合は、長さ０の文字列を返す)
    このﾒｿｯﾄﾞは、nullを返しません

  - ### array2line

    public static String array2line(String[] array, String separator)
    String型の配列から、セパレーターで連結されたString を作成します。 これは，配列を表示用に変換する為のものです。
    パラメータ:
      `array` - 元の文字列配列
      `separator` - 区切り記号
    戻り値:
      一列に変換した文字列(引数がnullの場合は、長さ０の文字列を返す)
    このﾒｿｯﾄﾞは、nullを返しません

  - ### array2line

    public static String array2line(String[] array, String separator, int start)
    String型の配列から、セパレーターで連結されたString を作成します。 これは，配列を表示用に変換する為のものです。
    パラメータ:
      `array` - 元の文字列配列
      `separator` - 区切り記号
      `start` - 配列の連結開始アドレス
    戻り値:
      一列に変換した文字列(引数がnullの場合は、長さ０の文字列を返す)
    このﾒｿｯﾄﾞは、nullを返しません

  - ### enume2Array

    public static Object[] enume2Array(Enumeration<?> enume)
    Enumerationから、オブジェクト配列データを返します。 これは，Enumerationを表示用に変換する為のものです。
    パラメータ:
      `enume` - 元のEnumeration
    戻り値:
      オブジェクト配列
    このﾒｿｯﾄﾞは、nullを返しません

  - ### enume2Array

    public static Object[] enume2Array(Enumeration<?> enume, Object[] objs)
    Enumerationから、オブジェクト配列データを返します。 これは，Enumerationを表示用に変換する為のものです。
    パラメータ:
      `enume` - 元のEnumeration
      `objs` - - 配列が十分な大きさを持つ場合は、Vector の要素が格納される配列。 そうでない場合は、要素を格納するために同じ実行時の型の新しい配列が割り当てられる
    戻り値:
      オブジェクト配列

  - ### iterator2line

    public static String iterator2line(Iterator<?> ite, String separator)
    Iteratorから、セパレーターで連結されたString を作成します。 これは，Enumerationを表示用に変換する為のものです。
    パラメータ:
      `ite` - 元のIterator
      `separator` - 区切り記号
    戻り値:
      一列に変換した文字列
    このﾒｿｯﾄﾞは、nullを返しません

  - ### csv2Array

    public static String[] csv2Array(String csvData)
    カンマ(,)で連結された String を、配列に分解して、その値を返します。 これは，たとえば、AAA,BBB,CCC などのリソースデータを受けてから配列に入れ直して、 メニューなりリストを作成するのに便利です。 要素が空の場合は、必ずカンマの間にスペースを入れて記述してください。 分割後の文字列の前後のスペースは、削除されます。
    パラメータ:
      `csvData` - 元のデータ
    戻り値:
      文字列配列(引数がnull、ゼロ文字列の場合は、サイズ0の配列を返す)
    このﾒｿｯﾄﾞは、nullを返しません

  - ### csv2Array

    public static String[] csv2Array(String csvData, char separator)
    区切り文字で連結された String を、配列に分解して、その値を返します。 これは，たとえば、AAA,BBB,CCC などのリソースデータを受けてから配列に入れ直して、 メニューなりリストを作成するのに便利です。 連続した区切り文字は、１文字に分割します。 分割後の文字列の前後のスペースは、削除されます。
    パラメータ:
      `csvData` - 元のデータ
      `separator` - 区切り文字
    戻り値:
      文字列配列(引数がnull、ゼロ文字列の場合は、サイズ0の配列を返す)
    このﾒｿｯﾄﾞは、nullを返しません

  - ### csv2Array

    public static String[] csv2Array(String csvData, char separator, int len)
    区切り文字で連結された String を、配列に分解して、その値を返します。 これは，たとえば、AAA,BBB,CCC などのリソースデータを受けてから配列に入れ直して、 メニューなりリストを作成するのに便利です。 連続した区切り文字は、１文字に分割します。 分割後の文字列の前後のスペースは、削除されます。(区切り文字がTABの場合を除く：7.0.4.0 (2019/05/31) ) 第３の引数は、リターンする配列の個数を指定します。 len=0 だけは特別で、分解したデータの個数分の配列を作成します。指定の長さが短い場合は、 そこまで分のみ取り込みます。指定の長さが長い場合は、余分に配列を作成します。 データがNULLや、ゼロ文字列の場合は、長さゼロの配列を返します。 セットされる値は、"" です。
    パラメータ:
      `csvData` - 元のデータ
      `separator` - 区切り文字
      `len` - 指定の最大長さの配列で返します(0の場合は、オリジナルの長さの配列か、長さゼロの配列)。
    戻り値:
      文字列配列(引数がnull、ゼロ文字列の場合は、サイズ(len)の配列を返す)
    変更履歴:
      3.8.5.1 (2006/05/08) 設定配列の数を指定できるように変更, 3.8.8.2 (2007/01/26) 分割後の値の前後のスペースは削除します。, 6.4.5.1 (2016/04/28) CSVTokenizer のインターフェースを、Iterator に変更。, 6.8.5.0 (2018/01/09) 引数lenを最大配列長として処理します。, 7.0.4.0 (2019/05/31) separatorがタブの場合は、trim() しないように変更
    このﾒｿｯﾄﾞは、nullを返しません

  - ### csv2Array

    public static String[] csv2Array(String csvData, char separator, int len, String defVal)
    区切り文字で連結された String を、配列に分解して、その値を返します。 これは，#csv2Array( String,char,int ) メソッドで、分割時のデータが ゼロ文字列の場合に、セットする初期値です。 元のデータがnull、ゼロ文字列の場合は、defVal がセットされた サイズlenの配列を返します。 データ数が、指定の len より少ない場合、先のメソッドでは、ゼロ文字列を追加していましたが、 ここでは、初期値の defVal をセットします。 また、分解後、trim() されたデータが、ゼロ文字列の場合も、defVal をセットします。
    パラメータ:
      `csvData` - 元のデータ
      `separator` - 区切り文字
      `len` - 指定の長さの配列で返します。
      `defVal` - 分割したデータが、ゼロ文字列の場合の初期値
    戻り値:
      文字列配列(引数がnull、ゼロ文字列の場合は、サイズ0の配列を返す)
    変更履歴:
      6.8.5.0 (2018/01/09) CSVTokenizer のインターフェースを、Iterator に変更。
    このﾒｿｯﾄﾞは、nullを返しません

  - ### csv2ArrayOnly

    public static String[] csv2ArrayOnly(String csvData)
    区切り文字で連結された String を、配列に分解して、その値を返します。 これは，たとえば、AAA,BBB,CCC などのリソースデータを受けてから配列に入れ直して、 メニューなりリストを作成するのに便利です。 csv2Array と異なり、連続した区切り文字は、分割せずにトークンのみ切り出します。 トークンは、カンマ(,)のみで区切り、その後 trim() により 前後のスペースを削除します。
    パラメータ:
      `csvData` - 元のデータ
    戻り値:
      文字列配列
    このﾒｿｯﾄﾞは、nullを返しません

  - ### csv2ArrayExt

    public static Integer[] csv2ArrayExt(String csvData, int maxNo)
    カンマ(,)、ハイフン(-)で連結された String を、配列に分解して、その値を返す処理のスペシャル版です。 0,1,3,5-8,10-* などの数字文字列から、必要な数字をピックアップした数字配列を返します。 引数の maxNo は、"*" が指定された場合の、最大の数値です。 よって、"*" は、単独(１文字)では、0-maxNo を表し、N-* では、N-maxNo を意味します。 CSV形式で指定される値は、基本的に数字で、重複(1,1,2,2)、逆転(3,2,1)で指定できます。 5-3 と指定した場合は、5,4,3 に分解されます。逆順に登録されます。 重複削除、昇順並べ替え等が、必要な場合は、取得後の配列を操作してください。
    パラメータ:
      `csvData` - 0,1,3,5-8,10-* などのCSV-ハイフン文字列
      `maxNo` - "*" が指定された場合の、最大数
    戻り値:
      数字配列(引数がnull、ゼロ文字列の場合は、サイズ0の配列を返す)
    変更履歴:
      5.5.7.2 (2012/10/09) 新規追加, 6.2.6.0 (2015/06/19) アルファベットの対応を廃止し、数字配列のみサポートします。
    このﾒｿｯﾄﾞは、nullを返しません

  - ### valueOf

    public static String valueOf(Object obj)
    Object 引数の文字列表現を返します。 これは，String.valueOf とほぼ同じ動作をしますが、引数が null の場合に、 "null" という文字列を返すのではなく、なにもない文字列 "" を返します。
    パラメータ:
      `obj` - 文字列表現すべき元のオブジェクト
    戻り値:
      引数が null の場合は、"" に等しい文字列。そうでない場合は、obj.toString() の値
    このﾒｿｯﾄﾞは、nullを返しません

  - ### htmlFilter

    public static String htmlFilter(String input)
    HTML上のエスケープ文字を変換します。 HTMLで表示する場合にきちんとエスケープ文字に変換しておかないと Script を実行されたり、不要なHTMLコマンドを潜り込まされたりするため、 セキュリティーホールになる可能性があるので、注意してください。
    パラメータ:
      `input` - HTMLエスケープ前の文字列
    戻り値:
      エスケープ文字に変換後の文字列
    変更履歴:
      5.8.2.2 (2014/12/19) アポストロフィの対応, 6.2.2.3 (2015/04/10) htmlフィルターに、BR→改行処理機能を追加。互換性の為のメソッド。
    このﾒｿｯﾄﾞは、nullを返しません

  - ### htmlFilter

    public static String htmlFilter(String input, boolean flag)
    HTML上のエスケープ文字を変換します。 HTMLで表示する場合にきちんとエスケープ文字に変換しておかないと Script を実行されたり、不要なHTMLコマンドを潜り込まされたりするため、 セキュリティーホールになる可能性があるので、注意してください。 引数のフラグは、BR→改行コード の変換処理を行うかどうかを指定します。 true が、変換処理を行うです。 titleなどのTips表示する場合、改行は、「\n(改行コード)」で行います。 (HTMLで取り扱うので、&#13;&#10; の方が良いかもしれない。 その場合は、エスケープ処理と順番を入れ替えないと、そのまま表示されてしまう。) 一方、タグ等で改行を行うには、<BR/> で改行を指定します。 改行については、「\n」文字列を指定する事で統一します。
    パラメータ:
      `input` - HTMLエスケープ前の文字列
      `flag` - [true:BR変換する/false:BR変換しない]
    戻り値:
      エスケープ文字に変換後の文字列
    変更履歴:
      5.8.2.2 (2014/12/19) アポストロフィの対応, 6.2.2.3 (2015/04/10) htmlフィルターに、BR→改行処理機能を追加。, 6.2.5.0 (2015/06/05) htmlフィルターで、BR→改行処理が、引数間違いの為うまくできていなかった。
    このﾒｿｯﾄﾞは、nullを返しません

  - ### yenN2br

    public static String yenN2br(String input)
    「\n」という文字列を、BRタグに変換します。 titleなどのTips表示する場合、改行は、「\n」で行います。 一方、タグ等で改行を行うには、<BR/> で改行を指定します。 BRタグは、リソーステーブル等に書き込みにくい為、また、本当の改行コードも 書き込みにくい為、改行については、「\n」文字列を指定する事で対応できるように 統一します。
    パラメータ:
      `input` - BR,\n変換前の文字列
    戻り値:
      変換後の文字列
    変更履歴:
      6.2.2.3 (2015/04/10) 「\n」という文字列を、BRタグに変換する処理を追加, 7.0.1.0 (2018/10/15) XHTML → HTML5 対応(空要素の、"／＞" 止めを、"＞" に変更します)。
    このﾒｿｯﾄﾞは、nullを返しません

  - ### quoteFilter

    public static String quoteFilter(String input)
    JavaScript 等の引数でのクオート文字をASCII変換します。 JavaScript の引数の値に、ダブルクオート(")、シングルクオート(')が 含まれると、文字列を表す為に前後に指定しているクオートと混乱し、 データを表現できないケースがあります。その場合には、クオート文字を ASCII文字に置き換える事で、指定の文字を渡すことが可能になります。 ここでは、引数文字列に、ダブルクオート(")、シングルクオート(')が、 含まれると、それぞれ、ASCII コード(￥ｘ２２、￥ｘ２７)に置き換えます。 なお、null は、ゼロ文字列に変換して返します。
    パラメータ:
      `input` - 入力文字列
    戻り値:
      クオート文字をASCII文字に置き換えた文字列
    このﾒｿｯﾄﾞは、nullを返しません

  - ### jsonFilter

    public static String jsonFilter(String input)
    JSON形式で出力する場合のためのエスケープ処理です。
    パラメータ:
      `input` - XMLエスケープ前の文字列
    戻り値:
      エスケープ文字に変換後の文字列
    変更履歴:
      5.9.6.4(2016/03/25) 新規作成

  - ### escapeFilter

    public static String escapeFilter(String input, String ignore)
    特殊文字のエスケープを元に戻す処理です。 元に戻すことで、htmlとして、使用します。 scriptタグは動作しないようにしています。 またignoreで指定したタグを除いて<にします。
    パラメータ:
      `input` - 特殊文字がエスケープされた文字列
      `ignore` - 指定したタグを除いて<にします
    戻り値:
      エスケープ前の文字列
    変更履歴:
      5.9.33.0 (2018/06/01) 新規作成

  - ### deleteChar

    public static String deleteChar(String value, char ch)
    所定のキャラクタコードを取り除いた文字列を作成します。 実現したい機能は、String#replace( 'x','' ) 的な表現です。 つまり、指定のキャラクタを取り除きたいのですが、上記コマンドでは、 コンパイル時にエラーが発生します。 取り除きたいキャラクタコードが存在しない場合は、指定の文字列を そのまま返します。
    パラメータ:
      `value` - 処理対象の文字列
      `ch` - 取り除きたいキャラクタ
    戻り値:
      処理後の文字列

  - ### countChar

    public static int countChar(String value, char ch)
    文字列に含まれる、特定の文字の個数をカウントして返します。
    パラメータ:
      `value` - 処理対象の文字列
      `ch` - カウントする文字
    戻り値:
      カウント数
    変更履歴:
      5.2.0.0 (2010/09/01)

  - ### code39

    public static String code39(String value, boolean checkDigit)
    CODE39 の 文字列を作成します。 CODE39 は、『0～9, A～Z,-,・,　,$,/,+,%』のコードが使用できる バーコードの体系です。通常 * で始まり * で終了します。 また、チェックデジット に、モジュラス43 が使われます。 ここでは、指定の文字列の前後に、* を付与し、必要であれば チェックデジットも付与します。 指定の入力文字列には、* を付けないでください。
    パラメータ:
      `value` - 処理対象の文字列
      `checkDigit` - チェックデジットの付与(true:付ける/false:付けない)
    戻り値:
      処理後の文字列
    このﾒｿｯﾄﾞは、nullを返しません

  - ### nval

    public static String nval(String inStr, String def)
    引数 inStr が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。 もちろん、inStr も def も null の場合は､null を返します。 ※ 影響範囲が大きいので、空白文字の判定は入れません。
    パラメータ:
      `inStr` - 基準となる文字列
      `def` - デフォルト文字列
    戻り値:
      引数 inStr が、null または、ゼロ文字列の場合は､デフォルト値を返す。

  - ### nval

    public static int nval(String inStr, int def)
    引数 inStr が、null または、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。 数値変換なので、空白文字列の場合も、デフォルト値を使用します。
    パラメータ:
      `inStr` - 基準となる文字列
      `def` - デフォルト数字
    戻り値:
      引数 inStr を変換した数字(int)。変換できない場合は デフォルト値 def

  - ### nval

    public static long nval(String inStr, long def)
    引数 inStr が、null または、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。
    パラメータ:
      `inStr` - 基準となる文字列
      `def` - デフォルト数字
    戻り値:
      引数 inStr を変換した数字(long)。変換できない場合は デフォルト値 def

  - ### nval

    public static double nval(String inStr, double def)
    引数 inStr が、null または、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。
    パラメータ:
      `inStr` - 基準となる文字列
      `def` - デフォルト数字
    戻り値:
      引数 inStr を変換した数字(double)。変換できない場合は デフォルト値 def
    変更履歴:
      6.9.2.1 (2018/03/12) 新規追加

  - ### nval

    public static boolean nval(String inStr, boolean def)
    引数 inStr が、null または、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。 通常は、"true" または、 "TRUE" 文字列を、論理値の true に変換します。 ただし、文字列長が 1文字の場合のみ、"0" 以外を true に変換します。
    パラメータ:
      `inStr` - 基準となる文字列
      `def` - デフォルト論理値
    戻り値:
      引数 inStr を変換した論理値。変換できない場合は デフォルト値 def
    変更履歴:
      6.8.0.1 (2017/06/30) つづり間違いに対応するため、厳密にチェックします。

  - ### nval2

    public static String nval2(String inStr, String def)
    引数 inStr が、null、"_"、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。 さらに、メモリ領域を節約する為、intern() の結果を返します。 ※ #nval(String) との整合性を取るため、空白文字の判定は入れません。
    パラメータ:
      `inStr` - 基準となる文字列
      `def` - デフォルト文字列
    戻り値:
      null、ゼロ文字列、"_"の場合は、デフォルト文字列を、そうでなければ、入力文字を返す。
    変更履歴:
      5.2.2.0 (2010/11/01) "_" の取り扱い変更

  - ### nval2

    public static String nval2(String inStr, String def, String def2)
    引数 inStr が、null または、ゼロ文字列、空白文字列の場合は､デフォルト値 def を返します。 ただし、NULL代替文字(_)は デフォルト値 def2 に置き換えます。 さらに、メモリ領域を節約する為、intern() の結果を返します。 ※ #nval(String) との整合性を取るため、空白文字の判定は入れません。
    パラメータ:
      `inStr` - 基準となる文字列
      `def` - デフォルト文字列
      `def2` - NULL代替文字(_)の場合のデフォルト文字列
    戻り値:
      null、ゼロ文字列の場合は、def1文字列を、"_"の場合は、def2文字列を、そうでなければ、入力文字を返す。
    変更履歴:
      5.2.2.0 (2010/11/01) "_" の取り扱い変更

  - ### nvalCsv

    public static String nvalCsv(String strCsv, String def)
    引数の CSV形式文字列 が、null または、ゼロ文字列の場合は､デフォルト値 def を返します。 それ以外の場合は、CSV形式の文字列を正規化します。 正規化とは、カンマで区切った後、trim() して、ゼロ文字列でない場合のみカンマで再結合します。
    パラメータ:
      `strCsv` - 基準となるCSV形式文字列
      `def` - デフォルト文字列
    戻り値:
      引数の CSV形式文字列 が、null または、ゼロ文字列の場合は､デフォルト値を返す。
    変更履歴:
      7.0.5.0 (2019/09/09) 新規追加

  - ### nvalAdd

    public static String nvalAdd(CharSequence... strs)
    指定のCharSequence同士を連結させます。 CharSequenceが、 null の場合は、連結しません。 すべてが null の場合は、ゼロ文字列が返されます。 ここでは、空白文字やタブ、改行コードも、指定されていれば、連結されます。
    パラメータ:
      `strs` - ... 可変長CharSequence
    戻り値:
      null以外の文字列が連結された状態
    関連項目:
      - `join(String,CharSequence...)`
    変更履歴:
      6.0.2.4 (2014/10/17) 新規追加, 6.4.5.0 (2016/04/08) 引数を可変長CharSequenceに変更
    このﾒｿｯﾄﾞは、nullを返しません

  - ### coalesce

    public static String coalesce(CharSequence... strs)
    最初の null(または、ゼロ文字列、空白文字、タブや改行コード) 以外の値を返します。 nval の 変数が、無制限版です。 すべてが null(または、ゼロ文字列) の場合は、null が返されます。 // * 空白文字、タブや改行コードが来ても、返されます。
    パラメータ:
      `strs` - ... 可変長CharSequence
    戻り値:
      最初に現れた、null以外のCharSequenceを、Stringに変換したもの
    変更履歴:
      6.0.2.4 (2014/10/17) 新規追加, 6.4.5.0 (2016/04/08) 引数を可変長CharSequenceに変更, 6.9.7.0 (2018/05/14) タブや空白文字も null系と判断。

  - ### contains

    public static boolean contains(String key, String... vals)
    キーワードに対して、可変長引数の文字列が、含まれているかどうかを判定します。 キーワードが、null でなく、比較先の文字列が、ひとつでも含まれると、true が返ります。 大文字小文字は、厳密に判定されます。 key != null && ( key.contains( val1 ) || key.contains( val2 ) ･･･ ) の結果と同じです。
    パラメータ:
      `key` - キーワード
      `vals` - ... 比較先の可変長文字列(OR判定)
    戻り値:
      キーワード文字列の中に、比較先文字列がひとつでも含まれると、true
    変更履歴:
      6.4.4.2 (2016/04/01) contains 判定を行う新しいメソッドを新規追加します。

  - ### join

    public static String join(String delimiter, CharSequence... vals)
    連結文字列を使用して、可変長引数のCharSequenceを連結して返します。 連結文字列(delimiter)が、null の場合は、CharSequenceをそのまま連結(nvalAdd)していきます。 連結する文字列が null の場合は、連結しません。 連結文字列は、一番最後は出力されません。 処理できない場合は、長さゼロの文字列を返します。
    パラメータ:
      `delimiter` - 連結文字列
      `vals` - ... 連結するCharSequence
    戻り値:
      連結された結果の文字列
    関連項目:
      - `nvalAdd(CharSequence...)`
    変更履歴:
      6.4.4.2 (2016/04/01) join 処理を行う新しいメソッドを新規追加します。, 6.4.5.0 (2016/04/08) 引数を可変長CharSequenceに変更
    このﾒｿｯﾄﾞは、nullを返しません

  - ### isEmpty

    public static boolean isEmpty(CharSequence... vals)
    引数 vals が、一つでも、null または、ゼロ文字列の場合は､true を返します。 それ以外は false を返します。 isNull との違いは、スペースやタブ、改行だけの文字列は、null と判定しません。 文字列置換などで、スペースやタブなどと置換する場合、null やゼロ文字列では困る場合などの 判定で使用します。
    パラメータ:
      `vals` - 判定するCharSequence(可変長引数)
    戻り値:
      NULL文字列関係の場合は、true を、そうでなければ、false を返す。
    関連項目:
      - `isNull(CharSequence...)`
    変更履歴:
      6.9.2.1 (2018/03/12) 新規追加

  - ### isNull

    public static boolean isNull(CharSequence... vals)
    引数 vals が、一つでも、null または、ゼロ文字列、またはすべて空白文字(スペース、タブ、改行)の場合は､true を返します。 それ以外は false を返します。 isEmpty との違いは、判定前に、trim() 処理を行っているため、スペースやタブ、改行だけの文字列も、null と判定します。 キーワードとして使用できないケースで、この判定を利用します。 また、引数は可変長になっており、指定の｢どれか｣が、成立すれば、true と判定します。 処理的には、 val1 == null || val1.trim().length()==0 || val2 == null || val2.trim().length()==0 ･･･ CharSequence 系の配列自体の null チェックも兼ねています。 注意は、オールスペースやタブ文字、改行文字も true になります。
    パラメータ:
      `vals` - 判定するCharSequence(可変長引数)
    戻り値:
      NULL文字列関係の場合は、true を、そうでなければ、false を返す。
    関連項目:
      - `isNotNull(CharSequence...)`
    変更履歴:
      6.4.5.0 (2016/04/08) 引数をCharSequenceに変更, 6.9.0.0 (2018/01/31) 引数を可変長引数に変更, 6.9.2.1 (2018/03/12) 新規追加

  - ### isNotNull

    public static boolean isNotNull(CharSequence... vals)
    引数 vals が、すべて、null または、ゼロ文字列、またはすべて空白文字(スペース、タブ、改行)でない場合は､true を返します。 #isNull( CharSequence... ) の反転です。 そのため、｢すべて｣の文字列が、null か、ゼロ文字、空白文字でない場合のみ、true になります。 isNull の表示上、'!' マークのあるなしは、判別しにくいため、メソッドを用意しています。
    パラメータ:
      `vals` - 判定するCharSequence(可変長引数)
    戻り値:
      NULL文字列関係でない場合は、true を、｢どれか｣が、NULL文字列関係の場合は、false を返す。
    関連項目:
      - `isNull(CharSequence...)`
    変更履歴:
      6.9.2.1 (2018/03/12) 新規追加

  - ### numberFormat

    public static String numberFormat(String inStr, int minFraction)
    浮動小数点数について、カンマ編集を行います。 このメソッドでは、1.23 E12 などの数字は扱いません。通常の 数字とピリオドで構成された文字列のみ、変換対象になります。 (ただし、不正な文字列を与えてもエラーチェックはしていません。) minFraction には、小数点部に与える固定値を指定します。入力文字列が その桁数より少ない場合は、０埋めします。 多い場合は、四捨五入します。 minFraction が 0 の場合は、小数点は付きません。 ".12" などの小数点は、必ず先頭に 0 が付きます。 入力文字列が null か、ゼロ文字列時は、そのまま入力データを返します。

                DecimalFormat format = new DecimalFormat( "#,##0.00########" );
                double dd = Double.parseDouble( val );
                return format.format( dd );

    に対して、minFraction分の小数以下のゼロの指定と、inに ',' が 含まれた処理を追加した感じになります。
    パラメータ:
      `inStr` - 変換元の文字列
      `minFraction` - 変換時の小数点以下の固定桁数
    戻り値:
      カンマ編集後の数字型文字列
    変更履歴:
      4.0.0.0 (2007/10/26) 空白のトリム処理を追加, 6.0.4.0 (2014/11/28) 小数点指定が、0 の場合、小数点以下は表示しない, 6.2.0.0 (2015/02/27) 小数点指定の精度に合わせるのと、内部ロジック完全置換, 6.2.0.1 (2015/03/06) 互換性の関係で、nullかゼロ文字列の時は、そのまま、in を返す。, 6.3.6.1 (2015/08/28) throw new OgRuntimeException するのではなく、System.err.println する。, 6.3.8.5 (2015/10/16) ogErrMsgPrint 使用。, 6.4.2.0 (2016/01/29) ogErrMsgPrint メソッドを、ThrowUtil クラスに移動のため、修正

  - ### newInstance

    public static Object newInstance(String cls)
    指定されたクラスローダを使って、識別id に応じた オブジェクトを作成します。 作成するには、デフォルトコンストラクターが必要です。 initialize パラメータは true 相当(それまでに初期化されていない場合だけ初期化)です。
    パラメータ:
      `cls` - 作成するクラスのフルネーム
    戻り値:
      オブジェクト
    例外:
      `RuntimeException` - 何らかのエラーが発生した場合
    変更履歴:
      6.4.3.3 (2016/03/04) リフレクション系の例外の共通クラスに置き換えます。, 6.8.2.3 (2017/11/10) java9対応(cls.newInstance() → cls.getDeclaredConstructor().newInstance()), 7.2.5.0 (2020/06/01) ClassLoaderを引数にするnewInstanceメソッドを廃止します。
    このﾒｿｯﾄﾞは、nullを返しません

  - ### urlAppend

    public static String urlAppend(CharSequence url1, CharSequence... urls)
    指定のURL文字列同士を連結させます。 そのとき、後方URLが、絶対パスの場合は、連結せず 後方URLを返します。 第２引数以降は、絶対パス判定をせず直前のURLの末尾判定のみで連結します。 絶対パスかどうかは、通常のファイル属性と同様に、先頭が、'/' (UNIX)または、 ２文字目が、":" (Windows)の場合、または、先頭が "\" (ネットワークパス)で 始まる場合で判断します。 連結時に、前方URLの末尾に "/" を付加します。 処理の互換性確保のため、第３引数の可変長引数を追加しています。
    パラメータ:
      `url1` - 先頭URLCharSequence
      `urls` - 後方URL可変長CharSequence(絶対パスの場合は、返り値)
    戻り値:
      URL文字列同士の連結結果 url1 + url2(url2が絶対パスの場合は、url2から連結開始)
    変更履歴:
      5.0.0.1 (2009/08/15) 不要なオブジェクトの生成を抑制する。, 5.6.5.2 (2013/06/21) 第３引数を可変長引数に変更, 6.4.5.0 (2016/04/08) 引数をCharSequenceに変更, 6.4.7.2 (2016/06/20) 絶対パスの判定を、可変長URLにも適用する。
    このﾒｿｯﾄﾞは、nullを返しません

  - ### getUnicodeEscape

    public static String getUnicodeEscape(CharSequence value)
    Unicode文字列の値を HTML のエスケープ記号(&#xZZZZ;)に変換します。 SJIS(JA16SJIS) で作成されたデータベースに、(NVARCHAR2)を使用して中国語等を登録するのは 非常に複雑でかつ、リスクが大きい処理になります。 ORACLE殿でも、自信を持っては勧められない機能とのコメントを頂いています。 そこで、HTMLでのエスケープ文字を使用して、Unicodeを文字列化して登録する為の DBType として、新規に作成します。 ここでは、入力文字を、キャラクタ(char)型に分解し、(&#xZZZZ;)に変換していきます。 よって、通常に１文字(Shift-JISで２Byte,UTF-8で３Byte)が、８Byteになります。 この変換された文字列を、HTML上でそのまま取り出すと、元のUnicode文字に戻る為、 通常のShift-JISでは、扱えない文字(中国語など)でも表示可能になります。 ここでは、2バイト文字のみ、変換しています。
    パラメータ:
      `value` - 変換前のCharSequence
    戻り値:
      HTMLのエスケープ記号(&#xZZZZ;)
    変更履歴:
      6.4.5.0 (2016/04/08) 引数をCharSequenceに変更
    このﾒｿｯﾄﾞは、nullを返しません

  - ### getReplaceEscape

    public static String getReplaceEscape(String value)
    HTML のエスケープ記号(&#xZZZZ;)をUnicode文字列に戻します。 HTMLでのエスケープ文字を使用して登録された文字を、Unicodeに戻します。 (&#xZZZZ;)の８Byteを、もとのキャラクタコードに戻し、合成します。 ここでは、通常の文字列に混在したエスケープ文字も戻せるようにします。
    パラメータ:
      `value` - HTMLのエスケープ記号(&#xZZZZ;)を含む文字列
    戻り値:
      通常のUnicode文字列
    変更履歴:
      5.9.5.3 (2016/02/26) 無限ループ対応
    このﾒｿｯﾄﾞは、nullを返しません

  - ### parseDouble

    public static double parseDouble(String value)
    文字列をdoubleに変換します。 これは、Double.parseDouble( value ) と、ほぼ同じ動作を行います。 内部的には、引数の カンマ(,) を削除した文字列を、Double.parseDouble( value ) に渡します。 また、引数が、null,ゼロ文字列,'_' の時には、0.0 を返します。
    パラメータ:
      `value` - doubleに変換する元の文字列
    戻り値:
      変換後のdouble数値
    変更履歴:
      6.3.9.0 (2015/11/06) もう少し判りやすくする。(処理速度は落ちてます。)

  - ### spanCut

    public static String spanCut(String data)
    引数からspanタグを取り除いて返します。 引数が、<span ･･･>YYYY</span>形式の場合、YYYY のみ出力します。 この処理では、先頭にspan が一つだけある場合、削除します。 複数の span や、div などを削除する場合は、#tagCut(String) メソッドで処理します。
    パラメータ:
      `data` - 元のString文字列
    戻り値:
      spanタグが取り除かれた文字列(引数が null の場合は、そのまま null が返ります)
    関連項目:
      - `tagCut(String)`
    変更履歴:
      4.3.4.3 (2008/12/22) TableWriterで利用していたものを移動

  - ### tagCut

    public static String tagCut(String data)
    引数からタグを取り除いて返します。 引数が、<xxxx ･･･>YYYY</xxxx>形式の場合、YYYY のみ出力します。 この処理では、すべてのタグを削除し、BODY部をつなげます。 <xxxx/> の様な、BODY要素を持たない場合は、ゼロ文字列になります。
    パラメータ:
      `data` - 元のString文字列
    戻り値:
      タグが取り除かれた文字列(引数が null の場合は、そのまま null が返ります)
    変更履歴:
      6.2.0.0 (2015/02/27) 引数からタグを削除し、BODY文字列を切り出します。

  - ### cssParse

    public static ConcurrentMap<String,String> cssParse(String cssText)
    簡易CSS形式のフォーマットを、Mapにセットします。 簡易CSS形式とは、セレクタのない、{ プロパティ1 : 値1 ; ・・・ } 形式とします。 これを、プロパティ1 と 値1 のMap にセットする処理を行います。 ブロックコメントは、削除されます。ラインコメントは使えません。 また、同一プロパティが記述されている場合は、後処理を採用します。 なお、入力テキストが、null か、{…} が存在しない場合は、空のMapを返します。
    パラメータ:
      `cssText` - 簡易CSS形式のフォーマット文字列
    戻り値:
      パース結果のMap(ConcurrentMap)
    例外:
      `OgRuntimeException` - 簡易CSS形式のフォーマットの整合性不良の時
    変更履歴:
      5.6.5.2 (2013/06/21) 新規追加, 6.4.3.1 (2016/02/12) PMD refactoring. HashMap → ConcurrentHashMap に置き換え。, 6.4.3.3 (2016/03/04) 戻すMapが、not null制限つきであることを示すため、ConcurrentMap に置き換えます。, 8.0.0.0 (2021/09/30) CSS形式の整合性チェックを行います。
    このﾒｿｯﾄﾞは、nullを返しません

  - ### startsChar

    public static boolean startsChar(CharSequence data, char ch)
    引数の文字列が、引数の char で始まるかどうか判定します[始まる場合は、true]。 これは、PMDで言う所の、String.startsWith can be rewritten using String.charAt(0) の書き換え処理に相当します。 boolean flag = data != null && data.startsWith( chStr ); 的な処理を、 boolean flag = data != null && data.length() > 0 && data.charAt(0) == ch; に書き換える代わりに、このメソッドを使用します。 内部ロジックは、上記の相当します。
    パラメータ:
      `data` - 引数のCharSequence
      `ch` - チェックするchar
    戻り値:
      引数文字列が、nullでなく、ゼロ文字列でなく、引数char で始まる場合は、true
    関連項目:
      - `String.startsWith(String)`
    変更履歴:
      6.2.0.0 (2015/02/27) １文字 String.startsWith の String.charAt(0) 変換, 6.4.5.0 (2016/04/08) 引数をCharSequenceに変更

  - ### cut

    public static String cut(String org, int cutBytes, String enc)
    引数から指定文字の分のバイト数で切った文字列を返します。 文字列のバイト数は指定のエンコードでカウントします。 （文字の途中で切れる事はありません）
    パラメータ:
      `org` - 元のString文字列
      `cutBytes` - 切るバイト数
      `enc` - 文字列のエンコード
    戻り値:
      バイト数で切った文字列
    変更履歴:
      5.9.1.3 (2015/10/30) 新規作成, 6.4.2.0 (2016/01/29) StringUtil#ogStackTrace(Throwable) を、ThrowUtil##ogStackTrace(Throwable) に変更。

  - ### cut

    public static String cut(String org, int cutBytes)
    引数から指定文字の分のバイト数で切った文字列を返します。 バイト数のカウントはUTF-8として行います。
    パラメータ:
      `org` - 元のString文字列
      `cutBytes` - 切るバイト数
    戻り値:
      バイト数で切った文字列
    変更履歴:
      5.9.1.3 (2015/10/30) 新規作成

  - ### splitStartEnd

    public static String splitStartEnd(String org, String stStr, String edStr, Consumer<String> cons)
    元の引数から開始文字列と終了文字列の間の文字列と、残りを連結した文字列を生成します。 戻り値は、連結した文字列で、切り取った間の文字列は、関数型インタフェースの引数に設定されます。 なお、文字列の切り出しは、1度だけです。最初に見つかった、開始文字列と、その次に見つかった 終了文字列の間を切り取って、前後を連結するだけです。 元の文字列が、nullの場合は、return null で、関数I/Fは call されません。 元の文字列に、stStr(開始文字列)が含まれない/またはnullの場合は、return 元の文字列で、関数I/Fは call されません。 元の文字列に、stStr(開始文字列)が含まれ、edStr(終了文字列)が含まれない場合は、return 開始文字列以前と、(v) -> 開始文字列以降 をcallします。 元の文字列に、stStrもedStrも含む場合は、それらの間の文字列を削除(stStr,edStr含む)と、その間の文字列を引数に、 return 連結した文字列と、(v) -> 切り取った間の文字列 をcallします。 上記の場合、間の文字列が存在しない場合は、空文字列になります。 stStr(開始文字列)とed(終了文字列)に関しては、trim() して、前後の空欄は削除します。 例） splitFromTo( "abc class= XYZ ; efg" , "class=" , ";" v -> call(v) ); return "abc efg" call "XYZ" 例） splitFromTo( "abc class= XYZ efg" , "class=" , ";" , ";" v -> call(v) ); return "abc " call "XYZ efg" 例） splitFromTo( "abc style= XYZ ; efg" , "class=" , ";" , ";" v -> call(v) ); return "abc style= XYZ ; efg" call 実行されない(nullだから)
    パラメータ:
      `org` - 元のString文字列(nullも可)
      `stStr` - 開始文字列
      `edStr` - 終了文字列
      `cons` - 関数型インタフェースで、切り取った文字列を引数に呼び出されます。
    戻り値:
      削除後連結文字列と切り出した文字列の配列(必ず 2個の配列を返す)
    変更履歴:
      8.0.0.2 (2021/10/15) 新規作成