كيف تعمل تطبيع الرابط الدائم باستخدام regex؟

ذهبت إلى هذا الإعداد المسؤول > الروابط الدائمة > الإعدادات
والذي يقول إنه سيطبق التعبير العادي قبل مطابقة الرابط الدائم.

لدي عنوان URL قديم لمنتدى xenforo وهو
http://localhost/threads/xyz-abc-is-ghp.223846/

وعنوان URL الجديد لـ discourse هو
http://localhost/t/xyz-abc-is-ghp/274528

عندما أدخل عنوان URL الخاص بـ xenforo في المتصفح بدون الشعار (slug) مثل ما يلي، فإنه يعيد التوجيه بشكل صحيح ولكن ليس معه.
http://localhost/threads/223846/

لذلك حاولت استخدام التعبير العادي التالي لإزالة الشعار (slug) ولكنه يبدو أنه لا يفعل شيئًا. هل فاتني خطوة أم أن هذه ليست الطريقة الصحيحة للقيام بذلك؟
/^(/threads/)[^.]+.(\d+)/?$/+/\1\2

لا تحتاج إلى \\2. وتحتاج إلى \\ قبل النقطة التي تبحث عنها. لديك شيء واحد فقط بين قوسين. ربما شيء مثل

/^(/threads/)[^.]+\\.(\\d+)/?$/threads/\\1

/threads\\/[^.]+\\.([0-9]+)\\/?/threads/\\1

هذا نجح

مرحباً، أنا في نفس الموقف وهذا نجح معي! :clinking_beer_mugs:

ولكن عندما يحتوي الرابط (رابط xenforo) على صفحات داخلية مثل على سبيل المثال “https://website[.]com/threads/thread-slug/page-3” عندها سأحصل مرة أخرى على صفحة الخطأ “عفوًا! هذه الصفحة غير موجودة أو خاصة.” هل هناك حل لهذا؟