QuoteAwareTokenizer
public class QuotationAwareTokenizer
extends Object
java.lang.Object | |
↳ | com.android.tradefed.util.QuotationAwareTokenizer |
概括
公共构造函数 | |
---|---|
QuotationAwareTokenizer () |
公共方法 | |
---|---|
static String | combineTokens (String... tokens) 执行 |
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) 对字符串进行标记,按空格分割。 |
公共构造函数
QuoteAwareTokenizer
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)
对字符串进行标记,按指定的分隔符进行分割。不在连续的、不带引号的双引号之间进行分割。
分词器的工作原理:
- 将字符串拆分为“字符”,其中每个“字符”要么是转义字符,如 \"(即“\\\”),要么是单个真实字符,如 f(只是“f”)。
- 对于每个“角色”
- 如果是空格,则完成一个标记,除非我们被引用
- 如果是引号,请翻转“我们被引用”位
- 否则,将其添加到正在构建的令牌中
- 在 EOL 时,我们通常没有将最终令牌添加到 (tokens)
ERROR(/ArrayList)
- 如果最后一个“字符”是转义字符,则抛出异常;那无效
- 如果我们处于引用的中间,则抛出异常;那无效
- 否则,将最终令牌添加到 (tokens)
- 返回 (tokens) 的 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[] |