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, boolean logging)

สร้างโทเค็นสตริงโดยแยกตามช่องว่าง

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

สร้างโทเค็นสตริงโดยแยกตามตัวคั่นที่ระบุ

เครื่องมือสร้างสาธารณะ

QuotationAwareTokenizer

public QuotationAwareTokenizer ()

เมธอดสาธารณะ

combineTokens

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, 
                boolean logging)

สร้างโทเค็นสตริงโดยแยกตามช่องว่าง ไม่แยกเครื่องหมายคำพูดคู่ที่ไม่ได้อ้างอิง ซึ่งอยู่ติดกัน

ดูเพิ่มเติม tokenizeLine(String,String)

พารามิเตอร์
line String

logging boolean

การคืนสินค้า
String[]

tokenizeLine

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

สร้างโทเค็นสตริงโดยแยกตามตัวคั่นที่ระบุ ไม่แยกเครื่องหมายคำพูดคู่ที่ต่อเนื่องกัน ซึ่งไม่ได้อยู่ในเครื่องหมายคำพูด

วิธีการทำงานของโทเค็นไนเซอร์

  1. แยกสตริงออกเป็น "อักขระ" โดยที่ "อักขระ" แต่ละตัวจะเป็นอักขระที่หลีกเลี่ยง เช่น \" (นั่นคือ "\\\"") หรืออักขระจริงตัวเดียว เช่น f (นั่นคือ "f")
  2. สำหรับ "ตัวละคร" แต่ละตัว
    1. หากเป็นช่องว่าง ให้จบโทเค็น เว้นแต่จะมีการอ้างอิง
    2. หากเป็นเครื่องหมายคำพูด ให้สลับบิต "มีการอ้างอิงถึงเรา"
    3. หากไม่ใช่ ให้เพิ่มลงในโทเค็นที่กำลังสร้าง
  3. เมื่อถึง EOL โดยปกติแล้วเราจะยังไม่ได้เพิ่มโทเค็นสุดท้ายลงใน (โทเค็น) ArrayList
    1. หาก "อักขระ" สุดท้ายเป็นอักขระหลีก ให้ส่งข้อยกเว้น เนื่องจากไม่ถูกต้อง
    2. หากเราอยู่ระหว่างเครื่องหมายคำพูด ให้ส่งข้อยกเว้น เนื่องจากไม่ถูกต้อง
    3. หรือเพิ่มโทเค็นสุดท้ายลงใน (โทเค็น)
  4. ส่งคืนเวอร์ชัน String[] ของ (โทเค็น)

พารามิเตอร์
line String: String ที่จะแปลงเป็นโทเค็น

delim String: ตัวคั่นที่จะใช้แยก

logging boolean: จะบันทึกการดำเนินการหรือไม่

การคืนสินค้า
String[] สตริงเวอร์ชันที่แปลงเป็นโทเค็น

ส่ง
IllegalArgumentException หากแยกวิเคราะห์บรรทัดไม่ได้