CotaçãoAwareTokenizer

public class QuotationAwareTokenizer
extends Object

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


Resumo

Construtores públicos

QuotationAwareTokenizer ()

Métodos públicos

static String combineTokens (String... tokens)

Execute 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

CotaçãoAwareTokenizer

public QuotationAwareTokenizer ()

Métodos públicos

combineTokens

public static String combineTokens (String... tokens)

Execute o inverso de tokenizeLine(String) .
Dada a matriz de tokens, combine-os em uma única linha.

Devoluções
String Uma String criada a partir de todos os tokens.

tokenizeLine

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

Parâmetros
line String

delim String

Devoluções
String[]

tokenizeLine

public static String[] tokenizeLine (String line)

Tokeniza a string, dividindo em espaços. Não se divide entre aspas duplas consecutivas e sem aspas.

Veja também tokenizeLine(String, String)

Parâmetros
line String

Devoluções
String[]

tokenizeLine

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

Tokeniza a string, dividindo no delimitador especificado. Não se divide entre aspas duplas consecutivas e sem aspas.

Como funciona o tokenizador:

  1. Divida a string em "caracteres", onde cada "caractere" é um caractere de escape como \" (ou seja, "\\\"") ou um único caractere real como f (apenas "f").
  2. Para cada "personagem"
    1. Se for um espaço, termine um token, a menos que estejamos sendo citados
    2. Se for uma aspa, inverta a parte "estamos sendo citados"
    3. Caso contrário, adicione-o ao token que está sendo construído
  3. No EOL, normalmente não adicionamos o token final ao (tokens) ERROR(/ArrayList)
    1. Se o último “caractere” for um caractere de escape, lance uma exceção; isso não é válido
    2. Se estivermos no meio de uma citação, lance 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 : Uma String a ser tokenizada

delim String : o delimitador para dividir

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

Devoluções
String[] Uma versão tokenizada da string

Lança
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 se divide entre aspas duplas consecutivas e sem aspas.

Veja também tokenizeLine(String, String)

Parâmetros
line String

logging boolean

Devoluções
String[]