سؤال

لدي PCRE شكل التعبير العادية: <a\s*href=\"([^<]*)\"([^<]*)\((.*?)\)\">

ولكن أنا لا يمكن استخدامه في QT, كيف يمكن تحويله إلى QRegexp شكل أن تجعل من العمل في كيو تي.

شكرا

هل كانت مفيدة؟

المحلول

هل حاولت قراءة الوثائق?وتحديدا في قسم يسمى "ملاحظات بيرل المستخدمين"?ويبدو أن هذه يجب أن تكون واضحة جدا:

QRegExp regex( "<a\\s*href=\\"([^<]*)\\"([^<]*)\\((.*?)\\)\\">", 
    Qt::CaseSensitive, QRegExp:: RegExp2 );

علما أن كل ما فعلته كان هناك انقر نقرا مزدوجا فوق خطوط مائلة عكسية ، حيث C "تأكل" عند تفسير القانون.ولكن لدي شكوك أن أردت الاقتباس المزدوجة backslashed ، لذلك ربما هذا هو أكثر مثل ما تريد:

QRegExp regex( "<a\\s*href=\"([^<]*)\"([^<]*)\\((.*?)\\)\">", 
    Qt::CaseSensitive, QRegExp:: RegExp2 );

أنا أيضا لا أعرف لماذا كنت في محاولة لمطابقة 3 علامات الاقتباس في التعبير ولكن هذا هو خارج نطاق ما يطلب منك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top