QuotationAwareTokenizer

public class QuotationAwareTokenizer
extends Object

java.lang.객체
com.android.tradefed.util.QuotationAwareTokenizer


요약

공개 생성자

QuotationAwareTokenizer ()

공개 방법

static String combineTokens (String... tokens)

tokenizeLine(String) 의 역순으로 수행합니다.

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

공백으로 분할하여 문자열을 토큰화합니다.

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

지정된 구분 기호로 분할하여 문자열을 토큰화합니다.

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

공백으로 분할하여 문자열을 토큰화합니다.

공개 생성자

QuotationAwareTokenizer

public QuotationAwareTokenizer ()

공개 방법

결합토큰

public static String combineTokens (String... tokens)

tokenizeLine(String) 의 역순으로 수행합니다.
주어진 토큰 배열을 한 줄로 결합합니다.

보고
String 모든 토큰에서 생성된 String .

tokenizeLine

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

매개변수
line String

delim String

보고
String[]

tokenizeLine

public static String[] tokenizeLine (String line)

공백으로 분할하여 문자열을 토큰화합니다. 인용 부호가 없는 연속된 큰따옴표 사이를 분할하지 않습니다.

또한 참조 tokenizeLine(String, String)

매개변수
line String

보고
String[]

tokenizeLine

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

지정된 구분 기호로 분할하여 문자열을 토큰화합니다. 인용 부호가 없는 연속된 큰따옴표 사이를 분할하지 않습니다.

토크나이저 작동 방식:

  1. 문자열을 "문자"로 분할합니다. 여기서 각 "문자"는 \"(즉, "\\\"")와 같은 이스케이프 문자이거나 f(단지 "f")와 같은 단일 실제 문자입니다.
  2. 각 "캐릭터"에 대해
    1. 공백인 경우 인용되지 않는 한 토큰을 완료합니다.
    2. 따옴표인 경우 "우리는 인용되고 있습니다" 비트를 뒤집습니다.
    3. 그렇지 않으면 빌드 중인 토큰에 추가하십시오.
  3. EOL에서는 일반적으로 (tokens) ERROR(/ArrayList) 에 최종 토큰을 추가하지 않았습니다.
    1. 마지막 "문자"가 이스케이프 문자이면 예외를 throw합니다. 그건 유효하지 않아
    2. 인용문 중간에 있으면 예외를 던집니다. 그건 유효하지 않아
    3. 그렇지 않으면 최종 토큰을 (tokens)에 추가합니다.
  4. (tokens)의 String[] 버전을 반환합니다.

매개변수
line String : 토큰화할 String

delim String : 분할할 구분 기호

logging boolean : 작업을 기록할지 여부

보고
String[] 문자열의 토큰화된 버전

던지기
IllegalArgumentException 행을 구문 분석할 수 없는 경우

tokenizeLine

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

공백으로 분할하여 문자열을 토큰화합니다. 인용 부호가 없는 연속된 큰따옴표 사이를 분할하지 않습니다.

또한 참조 tokenizeLine(String, String)

매개변수
line String

logging boolean

보고
String[]