QuotationAwareTokenizer

public class QuotationAwareTokenizer
extends Object

java.lang.Object
com.android.tradefed.util.QuotationAwareTokenizer


概要

パブリック コンストラクタ

QuotationAwareTokenizer()

パブリック メソッド

static String combineTokens(String... tokens)

tokenizeLine(String) の逆を実行します。

static String[] tokenizeLine(String line, String delim)
static String[] tokenizeLine(String line)

文字列をトークン化し、スペースで分割します。

static String[] tokenizeLine(String line, boolean logging)

文字列をトークン化し、スペースで分割します。

static String[] tokenizeLine(String line, String delim, boolean logging)

文字列をトークン化し、指定した区切り文字で分割します。

パブリック コンストラクタ

QuotationAwareTokenizer

public QuotationAwareTokenizer ()

パブリック メソッド

combineTokens

public static String combineTokens (String... tokens)

tokenizeLine(String) の逆を実行します。
トークンの配列を指定すると、1 行に結合されます。

戻り値
String すべてのトークンから作成された String

tokenizeLine

public static String[] tokenizeLine (String line, 
                String delim)

パラメータ
line String

delim String

戻り値
String[]

tokenizeLine

public static String[] tokenizeLine (String line)

文字列をトークン化し、スペースで分割します。連続する引用符で囲まれていない 二重引用符の間では分割されません。

tokenizeLine(String,String) もご覧ください。

パラメータ
line String

戻り値
String[]

tokenizeLine

public static String[] tokenizeLine (String line, 
                boolean logging)

文字列をトークン化し、スペースで分割します。連続する引用符で囲まれていない 二重引用符の間では分割されません。

tokenizeLine(String,String) もご覧ください。

パラメータ
line String

logging boolean

戻り値
String[]

tokenizeLine

public static String[] tokenizeLine (String line, 
                String delim, 
                boolean logging)

文字列をトークン化し、指定した区切り文字で分割します。連続する 引用符で囲まれていない二重引用符の間では分割されません。

トークナイザの仕組みは次のとおりです。

  1. 文字列を「文字」に分割します。各「文字」は、\"(つまり「\\\"」)のようなエスケープされた 文字か、f(「f」)のような単一の実際の文字です。
  2. 各「文字」について
    1. スペースの場合は、引用符で囲まれていない限り、トークンを終了します。
    2. 引用符の場合は、「引用符で囲まれている」ビットを反転します。
    3. それ以外の場合は、作成中のトークンに追加します。
  3. 通常、EOL では、最後のトークンは(トークン)ArrayList
      に追加されていません。
    1. 最後の「文字」がエスケープ文字の場合は、例外をスローします。これは無効です。
    2. 引用符の途中の場合は、例外をスローします。これは無効です。
    3. それ以外の場合は、最後のトークンを(トークン)に追加します。
  4. (トークン)の String[] バージョンを返します。

パラメータ
line String: トークン化する String

delim String: 分割する区切り文字

logging boolean: オペレーションをロギングするかどうか

戻り値
String[] 文字列のトークン化されたバージョン

例外
IllegalArgumentException 行を解析できない場合