public final class StringUtil
extends java.lang.Object
StringUtil.java は、共通的に使用される String関連メソッドを集約した、クラスです。
修飾子とタイプ | メソッドと説明 |
---|---|
static java.lang.String |
array2csv(java.lang.String[] array)
String型の配列から、カンマ(,)で連結されたString を作成します。
|
static java.lang.String |
array2line(java.lang.String[] array,
java.lang.String separator)
String型の配列から、セパレーターで連結されたString を作成します。
|
static java.lang.String |
array2line(java.lang.String[] array,
java.lang.String separator,
int start)
String型の配列から、セパレーターで連結されたString を作成します。
|
static java.lang.String |
caseReplace(java.lang.String target,
java.lang.String caseStr,
boolean ignoreCase)
引数の AA:01 BB:02 CC:03 … 形式の、元値:新値のスペース区切り文字列を元に、
元値を新値に置き換えます。
|
static java.lang.CharSequence |
coalesce(java.lang.CharSequence[] strs)
最初の null(または、ゼロ文字列) 以外の値を返します。
|
static java.lang.String |
code39(java.lang.String value,
boolean checkDigit)
CODE39 の 文字列を作成します。
|
static boolean |
contains(java.lang.String key,
java.lang.String[] vals)
キーワードに対して、可変長引数の文字列が、含まれているかどうかを判定します。
|
static int |
countChar(java.lang.String value,
char ch)
文字列に含まれる、特定の文字の個数をカウントして返します。
|
static java.util.concurrent.ConcurrentMap |
cssParse(java.lang.String cssText)
簡易CSS形式のフォーマットを、Mapにセットします。
|
static java.lang.String[] |
csv2Array(java.lang.String csvData)
カンマ(,)で連結された String を、配列に分解して、その値を返します。
|
static java.lang.String[] |
csv2Array(java.lang.String csvData,
char separator)
区切り文字で連結された String を、配列に分解して、その値を返します。
|
static java.lang.String[] |
csv2Array(java.lang.String csvData,
char separator,
int len)
区切り文字で連結された String を、配列に分解して、その値を返します。
|
static java.lang.Integer[] |
csv2ArrayExt(java.lang.String csvData,
int maxNo)
カンマ(,)、ハイフン(-)で連結された String を、配列に分解して、その値を返す処理のスペシャル版です。
|
static java.lang.String[] |
csv2ArrayOnly(java.lang.String csvData)
区切り文字で連結された String を、配列に分解して、その値を返します。
|
static java.lang.String |
csvOutQuote(java.lang.String str)
文字列の前後のダブルクオートを取り外します。
|
static java.lang.String |
cut(java.lang.String org,
int cutBytes)
引数から指定文字の分のバイト数で切った文字列を返します。
|
static java.lang.String |
cut(java.lang.String org,
int cutBytes,
java.lang.String enc)
引数から指定文字の分のバイト数で切った文字列を返します。
|
static java.lang.String |
deleteChar(java.lang.String value,
char ch)
所定のキャラクタコードを取り除いた文字列を作成します。
|
static java.lang.String |
deleteWhitespace(java.lang.String data)
引数から空白文字を削除して返します。
|
static java.lang.Object[] |
enume2Array(java.util.Enumeration enume)
Enumerationから、オブジェクト配列データを返します。
|
static java.lang.Object[] |
enume2Array(java.util.Enumeration enume,
java.lang.Object[] objs)
Enumerationから、オブジェクト配列データを返します。
|
static java.lang.String |
getReplaceEscape(java.lang.String value)
HTML のエスケープ記号(&#xZZZZ;)をUnicode文字列に戻します。
|
static java.lang.String |
getUnicodeEscape(java.lang.CharSequence value)
Unicode文字列の値を HTML のエスケープ記号(&#xZZZZ;)に変換します。
|
static java.lang.String |
htmlFilter(java.lang.String input)
HTML上のエスケープ文字を変換します。
|
static java.lang.String |
htmlFilter(java.lang.String input,
boolean flag)
HTML上のエスケープ文字を変換します。
|
static java.lang.String |
intFill(int num,
int su_fill)
整数のフォーム( 12 で、整数部 12桁を表す)に合った新しい文字列を作り、それを返します。
|
static java.lang.String |
intFill(java.lang.String str,
int su_fill)
整数のフォーム( 12 で、整数部 12桁を表す)に合った新しい文字列を作り、それを返します。
|
static boolean |
isNull(java.lang.CharSequence inStr)
引数 inStr が、null または、ゼロ文字列、またはすべて空白文字の場合は、true を返します。
|
static java.lang.String |
iterator2line(java.util.Iterator ite,
java.lang.String separator)
Iteratorから、セパレーターで連結されたString を作成します。
|
static java.lang.String |
join(java.lang.String delimiter,
java.lang.CharSequence[] vals)
連結文字列を、使用して、可変長引数のCharSequenceを連結して返します。
|
static java.lang.String |
jsonFilter(java.lang.String input)
JSON形式で出力する場合のためのエスケープ処理です。
|
static java.lang.String |
lTrim0(java.lang.String inStr)
文字列の前方のゼロ(0)を削除します。
|
static byte[] |
makeByte(java.lang.String value,
java.lang.String encode)
指定の文字列をバイトコードに変換します。
|
static java.lang.String |
makeString(byte[] byteValue,
int start,
int length,
java.lang.String encode)
内部で使われる byte[] から String 生成 メソッド。
|
static java.lang.Object |
newInstance(java.lang.String cls)
識別id に応じた オブジェクトを作成します。
|
static java.lang.Object |
newInstance(java.lang.String cls,
java.lang.ClassLoader loader)
指定されたクラスローダを使って、識別id に応じた オブジェクトを作成します。
|
static java.lang.String |
numberFormat(java.lang.String inStr,
int minFraction)
浮動小数点数について、カンマ編集を行います。
|
static boolean |
nval(java.lang.String inStr,
boolean def)
引数 inStr が、null または、ゼロ文字列の場合は、デフォルト値 def を返します。
|
static int |
nval(java.lang.String inStr,
int def)
引数 inStr が、null または、ゼロ文字列の場合は、デフォルト値 def を返します。
|
static long |
nval(java.lang.String inStr,
long def)
引数 inStr が、null または、ゼロ文字列の場合は、デフォルト値 def を返します。
|
static java.lang.String |
nval(java.lang.String inStr,
java.lang.String def)
引数 inStr が、null または、ゼロ文字列の場合は、デフォルト値 def を返します。
|
static java.lang.String |
nval2(java.lang.String inStr,
java.lang.String def)
引数 inStr が、null、"_"、ゼロ文字列の場合は、デフォルト値 def を返します。
|
static java.lang.String |
nval2(java.lang.String inStr,
java.lang.String def,
java.lang.String def2)
引数 inStr が、null または、ゼロ文字列の場合は、デフォルト値 def を返します。
|
static java.lang.String |
nvalAdd(java.lang.CharSequence[] strs)
指定のCharSequence同士を連結させます。
|
static double |
parseDouble(java.lang.String value)
文字列をdoubleに変換します。
|
static java.lang.String |
quoteFilter(java.lang.String input)
JavaScript 等の引数でのクオート文字をASCII変換します。
|
static java.lang.String |
realFill(java.lang.String str,
double su_fill)
小数点のフォームに合った新しい文字列を作り、文字列を返します。
|
static java.lang.String |
replace(java.lang.String target,
java.lang.String from,
java.lang.String to)
ストリングの部分文字列を,別の文字列に置換えたストリングを返します。
|
static java.lang.String |
rTrim(java.lang.String str)
文字列の後ろのスペースを削除します。
|
static java.lang.String[] |
rTrims(java.lang.String[] str)
文字列配列の各要素の後ろのスペースを削除します。
|
static java.lang.String |
spanCut(java.lang.String data)
引数からspanタグを取り除いて返します。
|
static boolean |
startsChar(java.lang.CharSequence data,
char ch)
引数の文字列が、引数の char で始まるかどうか判定します[始まる場合は、true]。
|
static java.lang.String |
stringFill(java.lang.String str,
int su_fill,
java.lang.String encode)
半角スペースで固定長(半角換算の数)に変換した文字列を返します。
|
static java.lang.String |
stringKFill(java.lang.String str,
int su_fill,
java.lang.String encode)
全角スペースで固定長(半角換算の数)に変換した文字列を返します。
|
static java.lang.String |
stringXFill(java.lang.String str,
int su_fill)
半角スペースで固定長(半角換算の数)に変換した文字列を返します。
|
static java.lang.String |
tagCut(java.lang.String data)
引数からタグを取り除いて返します。
|
static java.lang.String |
toNumber(java.lang.String str)
文字列の後ろから、" .0" の文字を削除した数字型文字列を返します。
|
static java.lang.String |
urlAppend(java.lang.CharSequence url1,
java.lang.CharSequence[] urls)
指定のURL文字列同士を連結させます。
|
static java.lang.String |
urlDecode(java.lang.String value)
UTF-8 でURLエンコードされた文字列をデコードします。
|
static java.lang.String |
urlEncode(java.lang.String value)
UTF-8 で、URLエンコードを行います。
|
static java.lang.String |
urlEncode2(java.lang.String value)
UTF-8 で、ASCII以外の文字の、URLエンコードします。
|
static java.lang.String |
valueOf(java.lang.Object obj)
Object 引数の文字列表現を返します。
|
static java.lang.String |
yenN2br(java.lang.String input)
「\n」という文字列を、BRタグに変換します。
|
public static java.lang.String urlEncode(java.lang.String value)
value
- エンコードする文字列urlEncode2( String )
public static java.lang.String urlEncode2(java.lang.String value)
value
- エンコードする文字列urlEncode( String )
6.2.0.1 (2015/03/06) ASCII以外の文字の、URLエンコードを行う。 |
public static java.lang.String urlDecode(java.lang.String value)
value
- デコードする文字列5.4.5.0 追加 |
public static java.lang.String rTrim(java.lang.String str)
str
- 元の文字列public static java.lang.String toNumber(java.lang.String str)
str
- 元の文字列3.8.8.1 (2007/01/10) 新規作成 |
public static java.lang.String lTrim0(java.lang.String inStr)
inStr
- 元の文字列3.5.4.5 (2004/01/23) 新規追加 |
public static java.lang.String[] rTrims(java.lang.String[] str)
str
- 元の文字列配列(可変長引数)public static java.lang.String csvOutQuote(java.lang.String str)
str
- 元の文字列6.2.1.0 (2015/03/13) 先頭に、'0 が含まれる場合は、カンマを削除 |
public static java.lang.String makeString(byte[] byteValue, int start, int length, java.lang.String encode)
byteValue
- 変換するバイト列start
- 変換開始アドレスlength
- 変換バイト数encode
- 変換する文字エンコードpublic static byte[] makeByte(java.lang.String value, java.lang.String encode)
value
- 変換するストリング値encode
- 変換する文字エンコードpublic static java.lang.String stringXFill(java.lang.String str, int su_fill)
str
- Fill埋めする文字列su_fill
- Fill埋めする文字列の長さ。(半角換算の数)public static java.lang.String stringFill(java.lang.String str, int su_fill, java.lang.String encode)
str
- Fill埋めする文字列su_fill
- Fill埋めする文字列の長さ。(半角換算の数)encode
- Fill埋めする文字列の文字エンコード6.3.6.0 (2015/08/16) System.arraycopy が使える箇所は、置き換えます。 |
public static java.lang.String intFill(java.lang.String str, int su_fill)
str
- 整数の Stringsu_fill
- フォームを表す正の数字 ( 12 で、整数部 12桁を表す)java.lang.RuntimeException
- su_fill が、負の数か、元の文字数がフォームより長い場合、エラーintFill( int ,int )
public static java.lang.String intFill(int num, int su_fill)
num
- 正の整数su_fill
- フォームを表す数字 ( 12 で、整数部 12桁を表す)java.lang.RuntimeException
- su_fill または、num が、負の数の場合、エラーintFill( String ,int )
6.0.2.4 (2014/10/17) 新規追加 |
public static java.lang.String stringKFill(java.lang.String str, int su_fill, java.lang.String encode)
str
- Fill埋めする文字列su_fill
- Fill埋めする文字列の長さ。(半角換算の数)encode
- Fill埋めする文字列の文字エンコードpublic static java.lang.String realFill(java.lang.String str, double su_fill)
str
- 整数の Stringsu_fill
- フォームを表す実数 ( 12.4 で、整数部 12桁、小数部 4桁 計17桁 )public static java.lang.String replace(java.lang.String target, java.lang.String from, java.lang.String to)
target
- 元の文字列from
- 置換元部分文字列to
- 置換先部分文字列5.0.0.1 (2009/08/15) 不要なオブジェクトの生成を抑制する。 |
public static java.lang.String caseReplace(java.lang.String target, java.lang.String caseStr, boolean ignoreCase)
target
- 元の文字列caseStr
- 置換リスト(AA:01 BB:02 CC:03 … 形式)。null の場合は、比較しない。ignoreCase
- true:大文字として比較 / false:そのまま比較5.7.2.3 (2014/01/31) 新規追加 |
public static java.lang.String array2csv(java.lang.String[] array)
array
- 元の文字列配列(可変長引数)public static java.lang.String array2line(java.lang.String[] array, java.lang.String separator)
array
- 元の文字列配列separator
- 区切り記号public static java.lang.String array2line(java.lang.String[] array, java.lang.String separator, int start)
array
- 元の文字列配列separator
- 区切り記号start
- 配列の連結開始アドレスpublic static java.lang.Object[] enume2Array(java.util.Enumeration enume)
enume
- 元のEnumerationpublic static java.lang.Object[] enume2Array(java.util.Enumeration enume, java.lang.Object[] objs)
enume
- 元のEnumerationobjs
- - 配列が十分な大きさを持つ場合は、Vector の要素が格納される配列。
そうでない場合は、要素を格納するために同じ実行時の型の新しい配列が割り当てられるpublic static java.lang.String iterator2line(java.util.Iterator ite, java.lang.String separator)
ite
- 元のIteratorseparator
- 区切り記号public static java.lang.String[] csv2Array(java.lang.String csvData)
csvData
- 元のデータpublic static java.lang.String[] csv2Array(java.lang.String csvData, char separator)
csvData
- 元のデータseparator
- 区切り文字public static java.lang.String[] csv2Array(java.lang.String csvData, char separator, int len)
csvData
- 元のデータseparator
- 区切り文字len
- 指定の長さの配列で返します。3.8.5.1 (2006/05/08) 設定配列の数を指定できるように変更 |
3.8.8.2 (2007/01/26) 分割後の値の前後のスペースは削除します。 |
6.4.5.1 (2016/04/28) CSVTokenizer のインターフェースを、Iterator に変更。 |
public static java.lang.String[] csv2ArrayOnly(java.lang.String csvData)
csvData
- 元のデータpublic static java.lang.Integer[] csv2ArrayExt(java.lang.String csvData, int maxNo)
csvData
- 0,1,3,5-8,10-* などのCSV-ハイフン文字列maxNo
- "*" が指定された場合の、最大数5.5.7.2 (2012/10/09) 新規追加 |
6.2.6.0 (2015/06/19) アルファベットの対応を廃止し、数字配列のみサポートします。 |
public static java.lang.String valueOf(java.lang.Object obj)
obj
- 文字列表現すべき元のオブジェクトpublic static java.lang.String htmlFilter(java.lang.String input)
input
- HTMLエスケープ前の文字列5.8.2.2 (2014/12/19) アポストロフィの対応 |
6.2.2.3 (2015/04/10) htmlフィルターに、BR→改行処理機能を追加。互換性の為のメソッド。 |
public static java.lang.String htmlFilter(java.lang.String input, boolean flag)
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→改行処理が、引数間違いの為うまくできていなかった。 |
public static java.lang.String yenN2br(java.lang.String input)
input
- BR,\n変換前の文字列6.2.2.3 (2015/04/10) 「\n」という文字列を、BRタグに変換する処理を追加 |
public static java.lang.String quoteFilter(java.lang.String input)
input
- 入力文字列public static java.lang.String jsonFilter(java.lang.String input)
input
- XMLエスケープ前の文字列5.9.6.4(2016/03/25) 新規作成 |
public static java.lang.String deleteChar(java.lang.String value, char ch)
value
- 処理対象の文字列ch
- 取り除きたいキャラクタpublic static int countChar(java.lang.String value, char ch)
value
- 処理対象の文字列ch
- カウントする文字5.2.0.0 (2010/09/01) |
public static java.lang.String code39(java.lang.String value, boolean checkDigit)
value
- 処理対象の文字列checkDigit
- チェックデジットの付与(true:付ける/false:付けない)public static java.lang.String nval(java.lang.String inStr, java.lang.String def)
inStr
- 基準となる文字列def
- デフォルト文字列public static int nval(java.lang.String inStr, int def)
inStr
- 基準となる文字列def
- デフォルト数字public static long nval(java.lang.String inStr, long def)
inStr
- 基準となる文字列def
- デフォルト数字public static boolean nval(java.lang.String inStr, boolean def)
inStr
- 基準となる文字列def
- デフォルト論理値6.8.0.1 (2017/06/30) つづり間違いに対応するため、厳密にチェックします。 |
public static java.lang.String nval2(java.lang.String inStr, java.lang.String def)
inStr
- 基準となる文字列def
- デフォルト文字列5.2.2.0 (2010/11/01) "_" の取り扱い変更 |
public static java.lang.String nval2(java.lang.String inStr, java.lang.String def, java.lang.String def2)
inStr
- 基準となる文字列def
- デフォルト文字列def2
- NULL代替文字(_)の場合のデフォルト文字列5.2.2.0 (2010/11/01) "_" の取り扱い変更 |
public static java.lang.String nvalAdd(java.lang.CharSequence[] strs)
strs...
- 可変長CharSequencejoin( String,CharSequence... )
6.0.2.4 (2014/10/17) 新規追加 |
6.4.5.0 (2016/04/08) 引数を可変長CharSequenceに変更 |
public static java.lang.CharSequence coalesce(java.lang.CharSequence[] strs)
strs...
- 可変長CharSequence6.0.2.4 (2014/10/17) 新規追加 |
6.4.5.0 (2016/04/08) 引数を可変長CharSequenceに変更 |
public static boolean contains(java.lang.String key, java.lang.String[] vals)
key
- キーワードvals...
- 比較先の可変長文字列(OR判定)6.4.4.2 (2016/04/01) contains 判定を行う新しいメソッドを新規追加します。 |
public static java.lang.String join(java.lang.String delimiter, java.lang.CharSequence[] vals)
delimiter
- 連結文字列vals...
- 連結するCharSequencenvalAdd( CharSequence... )
6.4.4.2 (2016/04/01) join 処理を行う新しいメソッドを新規追加します。 |
6.4.5.0 (2016/04/08) 引数を可変長CharSequenceに変更 |
public static boolean isNull(java.lang.CharSequence inStr)
inStr
- 判定するCharSequence6.4.5.0 (2016/04/08) 引数を可変長CharSequenceに変更 |
public static java.lang.String numberFormat(java.lang.String inStr, int minFraction)
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 クラスに移動のため、修正 |
public static java.lang.Object newInstance(java.lang.String cls)
cls
- 作成するクラスのフルネームjava.lang.RuntimeException
- 何らかのエラーが発生した場合public static java.lang.Object newInstance(java.lang.String cls, java.lang.ClassLoader loader)
cls
- 作成するクラスのフルネームloader
- 作成するクラスのクラスローダjava.lang.RuntimeException
- 何らかのエラーが発生した場合6.4.3.3 (2016/03/04) リフレクション系の例外の共通クラスに置き換えます。 |
6.8.2.3 (2017/11/10) java9対応(cls.newInstance() → cls.getDeclaredConstructor().newInstance()) |
public static java.lang.String urlAppend(java.lang.CharSequence url1, java.lang.CharSequence[] urls)
url1
- 先頭URLCharSequenceurls
- 後方URL可変長CharSequence(絶対パスの場合は、返り値)5.0.0.1 (2009/08/15) 不要なオブジェクトの生成を抑制する。 |
5.6.5.2 (2013/06/21) 第3引数を可変長引数に変更 |
6.4.5.0 (2016/04/08) 引数をCharSequenceに変更 |
6.4.7.2 (2016/06/20) 絶対パスの判定を、可変長URLにも適用する。 |
public static java.lang.String getUnicodeEscape(java.lang.CharSequence value)
value
- 変換前のCharSequence6.4.5.0 (2016/04/08) 引数をCharSequenceに変更 |
public static java.lang.String getReplaceEscape(java.lang.String value)
value
- HTMLのエスケープ記号(&#xZZZZ;)を含む文字列5.9.5.3 (2016/02/26) 無限ループ対応 |
public static double parseDouble(java.lang.String value)
value
- doubleに変換する元の文字列6.3.9.0 (2015/11/06) もう少し判りやすくする。(処理速度は落ちてます。) |
public static java.lang.String spanCut(java.lang.String data)
data
- 元のString文字列tagCut(String)
4.3.4.3 (2008/12/22) TableWriterで利用していたものを移動 |
public static java.lang.String tagCut(java.lang.String data)
data
- 元のString文字列6.2.0.0 (2015/02/27) 引数からタグを削除し、BODY文字列を切り出します。 |
public static java.util.concurrent.ConcurrentMap cssParse(java.lang.String cssText)
cssText
- 簡易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 に置き換えます。 |
public static java.lang.String deleteWhitespace(java.lang.String data)
data
- 元のString文字列5.6.9.4 (2013/10/31) TableWriterで利用していたものを移動 |
public static boolean startsChar(java.lang.CharSequence data, char ch)
data
- 引数のCharSequencech
- チェックするcharString.startsWith(String)
6.2.0.0 (2015/02/27) 1文字 String.startsWith の String.charAt(0) 変換 |
6.4.5.0 (2016/04/08) 引数をCharSequenceに変更 |
public static java.lang.String cut(java.lang.String org, int cutBytes, java.lang.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) に変更。 |
public static java.lang.String cut(java.lang.String org, int cutBytes)
org
- 元のString文字列cutBytes
- 切るバイト数5.9.1.3 (2015/10/30) 新規作成 |
Webアプリケーションフレームワーク openGionCopyright (c) 2009 The openGion Project.