QuotationAwareTokenizer

public class QuotationAwareTokenizer
extends Object

JavaScript.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 שנוצר מכל האסימונים.

טוקניזציה

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. בדרך כלל, בסיום ההסכם, לא הוספנו את הטוקן האחרון ל-(tokens)‏ ERROR(/ArrayList)
    1. אם ה'תו' האחרון הוא תו בריחה (escape), יש להזין חריג. הערך לא תקין
    2. אם אנחנו באמצע ציטוט, אנחנו זורקים חריגה. זה לא חוקי
    3. אחרת, מוסיפים את האסימון הסופי אל (אסימונים)
  4. החזרת גרסת String[] של (אסימונים)

פרמטרים
line String: String להעברה לאסימונים

delim String: התו המפריד שבו צריך לפצל

logging boolean: האם לרשום פעולות או לא

החזרות
String[] גרסה של המחרוזת עם אסימונים

זריקות
IllegalArgumentException אם אי אפשר לנתח את הקו