أداة CharttionAwareTokenizer

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[]

سطر الرمز المميز

public static String[] tokenizeLine (String line)

تجزئ السلسلة، مع تقسيمها على المسافات. لا يتم تقسيمها بين علامتَي اقتباس مزدوجتَين متتاليتَين بدون علامتي اقتباس.

راجِع أيضًا tokenizeLine(String, String).

المعلمات
line String

المرتجعات
String[]

سطر الرمز المميز

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. عند انتهاء فترة التوفّر، لا نضيف عادةً الرمز المميّز النهائي إلى (الرموز المميزة) ERROR(/ArrayList)
    1. إذا كان "الحرف" الأخير هو حرف هروب، يجب طرح استثناء لأنّه ليس صالحًا.
    2. إذا كنا في منتصف علامة اقتباس، فضع استثناءً؛ فهذا غير صالح
    3. بخلاف ذلك، أضِف الرمز المميّز الأخير إلى (الرموز المميّزة).
  4. عرض نسخة String[] من (الرموز المميّزة)

المعلمات
line String: String المطلوب تحويله إلى رمز

delim String: محدِّد التقسيم

logging boolean: ما إذا كان سيتم تسجيل العمليات أم لا

المرتجعات
String[] نسخة مجزّأة من السلسلة

عمليات الرمي
IllegalArgumentException إذا تعذر تحليل الخط