CotationAwareTokenizer

public class QuotationAwareTokenizer
extends Object

java.lang.Object
   ↳ com.android.tradefed.util.CotationAwareTokenizer.


Resumo

Construtores públicos

QuotationAwareTokenizer()

Métodos públicos

static String combineTokens(String... tokens)

Faça o inverso de tokenizeLine(String).

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

Tokeniza a string, dividindo em espaços.

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

Tokeniza a string, dividindo no delimitador especificado.

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

Tokeniza a string, dividindo em espaços.

Construtores públicos

CotationAwareTokenizer

public QuotationAwareTokenizer ()

Métodos públicos

combineTokens

public static String combineTokens (String... tokens)

Faça o inverso de tokenizeLine(String).
Combinada de tokens em uma única linha.

Retorna
String Uma String criada com base em todos os tokens.

tokenizeLine

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

Parâmetros
line String

delim String

Retorna
String[]

tokenizeLine

public static String[] tokenizeLine (String line)

Tokeniza a string, dividindo em espaços. Não é dividido entre consecutivos e sem aspas aspas duplas.

Veja também tokenizeLine(String, String)

Parâmetros
line String

Retorna
String[]

tokenizeLine

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

Tokeniza a string, dividindo no delimitador especificado. Não é dividido entre aspas duplas sem aspas.

Como funciona o tokenizador:

  1. Dividir a string em "caracteres" em que cada "caractere" é um valor de escape caractere como \" (ou seja, "\\\"") ou um único caractere real como f (apenas "f").
  2. Para cada "caractere"
    1. Se for um espaço, finalize um token, a menos que estejamos entre aspas
    2. Se for uma aspa, inverta "estamos entre aspas" pouco
    3. Caso contrário, adicione ao token que está sendo criado
  3. No EOL, normalmente não adicionamos o token final ao (tokens) ERROR(/ArrayList)
    1. Se o último "caractere" for um caractere de escape, gerará uma exceção; isso não é válido
    2. Se estivermos no meio de uma citação, gere uma exceção. isso não é válido
    3. Caso contrário, adicione o token final a (tokens)
  4. Retornar uma versão String[] de (tokens)

Parâmetros
line String: um String a ser tokenizado.

delim String: o delimitador para dividir

logging boolean: registrar ou não operações

Retorna
String[] Uma versão tokenizada da string

Gera
IllegalArgumentException se a linha não puder ser analisada

tokenizeLine

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

Tokeniza a string, dividindo em espaços. Não é dividido entre consecutivos e sem aspas aspas duplas.

Veja também tokenizeLine(String, String)

Parâmetros
line String

logging boolean

Retorna
String[]