المرن (محلل معجمي) التعابير العادية - إعادة استخدام التعاريف
-
05-07-2019 - |
سؤال
ولدي هذا التعريف العملي:
IDENTIFIER [a-zA-Z][a-zA-Z0-9]*
وأنا لا أريد أن تبقي تكرار [A-زا-Z] و [0-9]، لذلك جعل تعريفين جديدة
DIGIT [0-9]
VALID [a-zA-Z]
وكيف يمكنني كتابة الحكم IDENTIFIER استخدام DIGIT وصالحة التعاريف؟
وأنا لا أعرف كيفية القيام المباراة "الثاني"، أنا عالقة هنا:
IDENTIFIER {VALID}[{VALID}{DIGIT}]* // This syntax is incorrect
وشكرا.
وتحرير: برنامج اختبار كامل بأنني أستخدم: http://pastebin.com/f5b64183f .
المحلول
ويبدو أنك فعلا تريد:
وIDENTIFIER {صالحة} ({صالحة} | {DIGIT}) *
[{} {VALID DIGIT}] يحل ل[[A-زا زي] [0-9]] وهي ليست بناء القانوني.
نصائح أخرى
وأعتقد أن هذا سوف نفعل ذلك، ولكن أنا لا يمكن اختبار ذلك. هل لديك بيانات العينة؟
و(؟: [A-زا-Z]) + (؟: [0-9]) +
لا تنتمي إلى StackOverflow