QuotationAwareTokenizer

public class QuotationAwareTokenizer
extends Object

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


Podsumowanie

Konstruktory publiczne

QuotationAwareTokenizer()

Metody publiczne

static String combineTokens(String... tokens)

Wykonaj odwrotną czynność: tokenizeLine(String).

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

Tokenizuje ciąg znaków, dzieląc go na spacje.

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

Tokenizuje ciąg znaków, dzieląc go na tokeny na podstawie spacji.

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

Tokenizuje ciąg znaków, dzieląc wartość według określonego separatora.

Konstruktory publiczne

QuotationAwareTokenizer

public QuotationAwareTokenizer ()

Metody publiczne

combineTokens

public static String combineTokens (String... tokens)

Wykonaj odwrotną operację do tokenizeLine(String).
Połącz je w jednym wierszu na podstawie tablicy tokenów.

Zwroty
String String utworzony ze wszystkich tokenów.

tokenizeLine

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

Parametry
line String

delim String

Zwroty
String[]

tokenizeLine

public static String[] tokenizeLine (String line)

Tokenizuje ciąg znaków, dzieląc go na spacje. Nie jest dzielony na kolejne cudzysłowy bez cudzysłowów.

Zobacz też tokenizeLine(String, String)

Parametry
line String

Zwroty
String[]

tokenizeLine

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

Tokenizuje ciąg znaków, dzieląc go na tokeny na podstawie spacji. Nie dzieli się na kolejne niesformatowane podwójne cudzysłowe.

Zobacz też tokenizeLine(String, String)

Parametry
line String

logging boolean

Zwroty
String[]

tokenizeLine

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

Tokenizuje ciąg znaków, dzieląc go na podstawie określonego separatora. Nie dzieli się na kolejne, niepoprzedzone cudzysłowami podwójnymi znaki.

Jak działa dzielenie na tokeny:

  1. Podziel ciąg znaków na „znaki”, przy czym każdy „znak” jest albo ujęty w znak modyfikacji, np. \" (czyli „\\\""), albo pojedynczym prawdziwym znakiem, np. f (tylko „f”).
  2. Każdy „znak”:
    1. Jeśli to spacja, dokończ token, chyba że mamy cytat
    2. Jeśli jest to cudzysłów, odwróć „jesteśmy cytowani”
    3. W przeciwnym razie dodaj go do tworzonego tokena
  3. W przypadku wersji EOL zwykle nie dodaliśmy ostatniego tokena do listy (tokenów) ERROR(/ArrayList)
    1. Jeśli ostatni „znak” jest znakiem zmiany znaczenia, zgłoś wyjątek, który jest nieprawidłowy.
    2. Jeśli jesteśmy w środku cytatu, twórz wyjątek; to jest nieprawidłowe
    3. W przeciwnym razie dodaj końcowy token do (tokeny)
  4. Zwraca tablicę String[] z wartością (tokenów).

Parametry
line String: String do podziału na tokeny

delim String: separator do podziału

logging boolean: czy logować operacje

Zwroty
String[] tokenizowana wersja ciągu znaków;

Rzuty
IllegalArgumentException jeśli nie można przeanalizować wiersza