使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
QuotationAwareTokenizer
public
class
QuotationAwareTokenizer
extends Object
java.lang.Object
|
↳ |
com.android.tradefed.util.QuotationAwareTokenizer
|
摘要
公共构造函数
QuotationAwareTokenizer
public QuotationAwareTokenizer ()
公共方法
combineTokens
public static String combineTokens (String... tokens)
执行 tokenizeLine(String)
的反向操作。
给定一个词法单元数组,将其合并为一行。
tokenizeLine
public static String[] tokenizeLine (String line,
String delim)
参数 |
line |
String |
delim |
String |
tokenizeLine
public static String[] tokenizeLine (String line,
boolean logging)
对字符串进行词法单元化处理,按空格进行拆分。不会在连续的未引号双引号之间拆分。
另请参阅 tokenizeLine(String, String)
参数 |
line |
String |
logging |
boolean |
tokenizeLine
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 :是否记录操作 |
抛出 |
IllegalArgumentException |
如果行无法解析 |
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-11-08。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2024-11-08。"],[],[]]