QuotationsAwareTokenizer

public class QuotationAwareTokenizer
extends Object

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


Riepilogo

Costruttori pubblici

QuotationAwareTokenizer()

Metodi pubblici

static String combineTokens(String... tokens)

Esegui l'inverso di tokenizeLine(String).

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

Tokenizza la stringa, dividendola in spazi.

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

Tokenizza la stringa, dividendola in spazi.

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

Tokenizza la stringa, suddividendola in base al delimitatore specificato.

Costruttori pubblici

QuotationsAwareTokenizer

public QuotationAwareTokenizer ()

Metodi pubblici

combineTokens

public static String combineTokens (String... tokens)

Esegui l'inverso di tokenizeLine(String).
Dato un array di token, combinali in una singola riga.

Resi
String Un String creato da tutti i token.

tokenizeLine

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

Parametri
line String

delim String

Resi
String[]

tokenizeLine

public static String[] tokenizeLine (String line)

Tokenizza la stringa, dividendola in spazi. Non suddivide tra virgolette doppie consecutive senza virgolette.

Vedi anche tokenizeLine(String,String)

Parametri
line String

Resi
String[]

tokenizeLine

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

Tokenizza la stringa, dividendola in spazi. Non suddivide tra virgolette doppie consecutive senza virgolette.

Vedi anche tokenizeLine(String,String)

Parametri
line String

logging boolean

Resi
String[]

tokenizeLine

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

Tokenizza la stringa, suddividendola in base al delimitatore specificato. Non suddivide tra virgolette doppie consecutive senza virgolette.

Come funziona il tokenizer:

  1. Dividi la stringa in "caratteri", dove ogni "carattere" è un carattere di escape come \" (ovvero "\\\"") o un singolo carattere reale come f (solo "f").
  2. Per ogni "carattere"
    1. Se si tratta di uno spazio, completa un token, a meno che non si tratti di una citazione
    2. Se si tratta di virgolette, inverti il bit "we're being quoted"
    3. In caso contrario, aggiungilo al token in fase di creazione.
  3. Al termine del periodo di validità, in genere non abbiamo aggiunto il token finale a (token) ArrayList
    1. Se l'ultimo "carattere" è un carattere di escape, genera un'eccezione; non è valido
    2. Se ci troviamo a metà di una citazione, genera un'eccezione; non è valida
    3. Altrimenti, aggiungi il token finale a (token)
  4. Restituisce una versione String[] di (token)

Parametri
line String: Un String da tokenizzare

delim String: il delimitatore in base al quale dividere

logging boolean: se registrare o meno le operazioni

Resi
String[] Una versione tokenizzata della stringa

Genera
IllegalArgumentException se la riga non può essere analizzata