QuotationAwareTokenizer

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'inversione di tokenizeLine(String).

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

Tokenizza la stringa, suddividendola in base agli spazi.

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

Tokenizza la stringa, dividendola in base agli spazi.

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

Tokenizza la stringa, dividendola in base al delimitatore specificato.

Costruttori pubblici

QuotationAwareTokenizer

public QuotationAwareTokenizer ()

Metodi pubblici

combineTokens

public static String combineTokens (String... tokens)

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

Ritorni
String Un String creato da tutti i token.

tokenizeLine

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

Parametri
line String

delim String

Ritorni
String[]

tokenizeLine

public static String[] tokenizeLine (String line)

Tokenizza la stringa, dividendola in base agli spazi. Non viene suddiviso tra virgolette doppie consecutive senza virgolette.

Vedi anche tokenizeLine(String, String)

Parametri
line String

Ritorni
String[]

tokenizeLine

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

Tokenizza la stringa, dividendola in base agli spazi. Non si divide tra virgolette doppie consecutive senza virgolette.

Vedi anche tokenizeLine(String, String)

Parametri
line String

logging boolean

Ritorni
String[]

tokenizeLine

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

Tokenizza la stringa, dividendola in base al delimitatore specificato. Non viene suddiviso tra virgolette doppie consecutive senza virgolette.

Come funziona lo tokenizer:

  1. Suddividi la stringa in "caratteri", dove ogni "carattere" può essere un carattere di escape come \" (ovvero "\\\"") o un singolo carattere reale come f (solo "f").
  2. Per ogni "personaggio":
    1. Se si tratta di uno spazio, completa un token a meno che non venga citato
    2. Se è una virgoletta, capovolgi la parte "Siamo stati citati"
    3. In caso contrario, aggiungilo al token in fase di creazione
  3. Al termine del ciclo di vita, in genere non viene aggiunto il token finale a (tokens) ERROR(/ArrayList)
    1. Se l'ultimo "carattere" è un carattere di escape, viene lanciata un'eccezione, il carattere non è valido
    2. Se siamo nel mezzo di una citazione, viene lanciata un'eccezione; non è valido
    3. In caso contrario, 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 eseguire la suddivisione

logging boolean: se registrare o meno le operazioni

Ritorni
String[] Una versione tokenizzata della stringa

Lanci
IllegalArgumentException Se la riga non può essere analizzata