QuotationAwareTokenizer

public class QuotationAwareTokenizer
extends Object

java.lang.Object
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 입니다.

토큰화라인

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

매개변수
line String

delim String

보고
String[]

토큰화라인

public static String[] tokenizeLine (String line)

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

tokenizeLine(String, String) 도 참조하세요.

매개변수
line String

보고
String[]

토큰화라인

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

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

토크나이저 작동 방식:

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

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

delim String : 분할할 구분 기호

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

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

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

토큰화라인

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

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

tokenizeLine(String, String) 도 참조하세요.

매개변수
line String

logging boolean

보고
String[]