jp.go.nict.langrid.commons.lang
クラス StringUtil

java.lang.Object
  上位を拡張 jp.go.nict.langrid.commons.lang.StringUtil

public final class StringUtil
extends Object

文字列に関するユーティリティを提供する。

バージョン:
$Revision: 10339 $
作成者:
Takao Nakaguchi, $Author: Takao Nakaguchi $

コンストラクタの概要
StringUtil()
           
 
メソッドの概要
static String[] decodeTuple(String value)
          文字列をタプルと見なし、要素配列に変換する。
static String encodeHttpHeaderValueAsUTF8(String text)
          文字列をHTTPヘッダの値として使用できるようにエンコーディングする。
static String encodeTuple(String... values)
          文字配列をタプル表現に変換する。
static String escape(String value, String escapeChars, char metaChar)
          文字列内の特定の文字を指定されたメタ文字を使ってエスケープする。
static String join(String[] elements, String separator)
          文字配列をseparatorで結合したものを返す。
static String join(String[] elements, String separator, int begin, int end)
          文字配列をseparatorで結合したものを返す。
static
<T> String
join(T[] elements, Transformer<T,String> textizer, String separator)
          オブジェクト配列を各要素についてtextizerを使用した値と指定されたセパレータを使い結合する。
static
<T> String
join(T[] elements, Transformer<T,String> textizer, String separator, int begin, int end)
          オブジェクト配列を各要素についてtextizerを使用した値と指定されたセパレータを使い結合する。
static String randomString(int count)
          指定された桁数のランダムな文字列を作成する。
static String repeatedString(StringGenerator generator, int count, String separator)
          指定回数文字列を生成して連結する。
static String repeatedString(String value, int count)
          指定された文字列を指定回数繰り返して文字列を作成する。
static String repeatedString(String value, int count, String separator)
          指定された文字列を指定回数繰り返して文字列を作成する。
static byte[] toUSASCIIBytes(String value)
          文字列をUS-ASCIIバイト列に変換して返す。
static byte[] toUTF8Bytes(String value)
          文字列をUTF-8バイト列に変換して返す。
static String unescape(String value, String escapeChars, char metaChar)
          escapeでエスケープされた文字列を復元する。
static String unquote(String value)
          文字列が'"'(ダブルクオーテーション)で囲まれている場合、それを除去する。
static String utf8BytesToString(byte[] bytes)
          バイト列のキャラクタセットをUTF-8とみなして文字列に変換する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

StringUtil

public StringUtil()
メソッドの詳細

toUTF8Bytes

public static byte[] toUTF8Bytes(String value)
文字列をUTF-8バイト列に変換して返す。

パラメータ:
value - 変換する文字列
戻り値:
変換されたバイト列

toUSASCIIBytes

public static byte[] toUSASCIIBytes(String value)
文字列をUS-ASCIIバイト列に変換して返す。

パラメータ:
value - 変換する文字列
戻り値:
変換されたバイト列

utf8BytesToString

public static String utf8BytesToString(byte[] bytes)
バイト列のキャラクタセットをUTF-8とみなして文字列に変換する。

パラメータ:
bytes - 変換するバイト列
戻り値:
変換された文字列

randomString

public static String randomString(int count)
指定された桁数のランダムな文字列を作成する。

パラメータ:
count - 生成する文字列の桁数
戻り値:
生成された文字列

repeatedString

public static String repeatedString(String value,
                                    int count)
指定された文字列を指定回数繰り返して文字列を作成する。

パラメータ:
value - 繰り返す文字列
count - 繰り返す回数
戻り値:
生成された文字列

repeatedString

public static String repeatedString(String value,
                                    int count,
                                    String separator)
指定された文字列を指定回数繰り返して文字列を作成する。

パラメータ:
value - 繰り返す文字列
count - 繰り返す回数
separator - 文字列と文字列の間に挿入するセパレータ
戻り値:
生成された文字列

repeatedString

public static String repeatedString(StringGenerator generator,
                                    int count,
                                    String separator)
指定回数文字列を生成して連結する。

パラメータ:
value - 文字列を生成するジェネレータ
count - 回数
separator - 文字列と文字列の間に挿入するセパレータ
戻り値:
文字列

join

public static String join(String[] elements,
                          String separator)
文字配列をseparatorで結合したものを返す。

パラメータ:
elements - 結合する文字配列
separator - 結合時に挟む文字列
戻り値:
結合された文字列

join

public static String join(String[] elements,
                          String separator,
                          int begin,
                          int end)
文字配列をseparatorで結合したものを返す。 elementsが要素数0の場合、""を返す。 elementsが要素数1の場合、要素0を返す。

パラメータ:
elements - 結合する文字配列
separator - 結合時に挟む文字列
begin - 開始インデックス
end - 終了インデックス(これが指す要素は含まない)
戻り値:
作成された文字列

join

public static <T> String join(T[] elements,
                              Transformer<T,String> textizer,
                              String separator)
オブジェクト配列を各要素についてtextizerを使用した値と指定されたセパレータを使い結合する。

型パラメータ:
T - 配列要素の型
パラメータ:
elements - 文字列配列
textizer - 個々のオブジェクトのテキスト化に使用されるTextizer
separator - セパレータ
戻り値:
結合された文字列

join

public static <T> String join(T[] elements,
                              Transformer<T,String> textizer,
                              String separator,
                              int begin,
                              int end)
オブジェクト配列を各要素についてtextizerを使用した値と指定されたセパレータを使い結合する。

型パラメータ:
T - 配列要素の型
パラメータ:
elements - 文字列配列
textizer - 個々のオブジェクトのテキスト化に使用されるTextizer
separator - セパレータ
begin - 開始インデックス
end - 終了インデックス(これが指す要素は含まない)
戻り値:
結合された文字列

encodeTuple

public static String encodeTuple(String... values)
文字配列をタプル表現に変換する。

パラメータ:
values - 文字配列
戻り値:
文字列

decodeTuple

public static String[] decodeTuple(String value)
                            throws ParseException
文字列をタプルと見なし、要素配列に変換する。

パラメータ:
value - 文字列
戻り値:
配列
例外:
ParseException - 解析に失敗した

unquote

public static String unquote(String value)
文字列が'"'(ダブルクオーテーション)で囲まれている場合、それを除去する。

パラメータ:
value - 文字列
戻り値:
両端の'"'(存在する場合)を除去した文字列

escape

public static String escape(String value,
                            String escapeChars,
                            char metaChar)
文字列内の特定の文字を指定されたメタ文字を使ってエスケープする。 メタ文字自体は連続するメタ文字でエスケープされる。
例: "hello, world%" -> "hello%7c world%%" (','を'%'でエスケープした場合)

パラメータ:
value - エスケープする文字の含まれた文字列
escapeChars - エスケープする文字
metaChar - メタ文字
戻り値:
エスケープ後の文字列

encodeHttpHeaderValueAsUTF8

public static String encodeHttpHeaderValueAsUTF8(String text)
文字列をHTTPヘッダの値として使用できるようにエンコーディングする。 ","を除いたASCIIコード表の印刷可能文字と空白以外は、UTF-8エンコーディングの バイト配列として、URLエンコードされる。 返された文字列は、URLDecoder.decode(text, "UTF-8")呼び出しによりデコード可能。

パラメータ:
text - エンコードする文字列
戻り値:
処理結果

unescape

public static String unescape(String value,
                              String escapeChars,
                              char metaChar)
escapeでエスケープされた文字列を復元する。

パラメータ:
value - エスケープされた文字列
escapeChars - エスケープする文字
metaChar - メタ文字
戻り値:
復元された文字列