النصوص 🔒 يعمل داخل متصفحك — لا تُرسل أي بيانات

نمط Regex للروابط URL

اعثر على عناوين الويب في النص بنمط قصير، وانظر أين يتوقف بالضبط قبل أن تضعه في شيفرتك.

/ /
نص الاختبار
المطابقات والمجموعات
تظهر المطابقات هنا...

نمط Regex للروابط URL

استخراج الروابط من السجلات أو ملفات المحادثات المصدَّرة أو النصوص المكشوطة مهمة لتعبير نمطي، وينبغي أن يكون النمط قصيرًا بما يكفي لقراءته. تفتح هذه الصفحة مختبِر التعابير النمطية بنمط URL (http/https) من مكتبة الأنماط، أي https?:\/\/[^\s/$.?#][^\s]*، مع الرايتين gi.

كيف يُقرأ النمط

الجزءالمعنى
https?http، مع s اختيارية
:\/\/النقطتان والشرطتان المائلتان، مُهرَّبة كي يعمل النمط أيضًا بين الشرطتين المائلتين في الشيفرة
[^\s/$.?#]أول محرف في اسم المضيف: أي محرف عدا المسافة والشرطة المائلة وعلامة الدولار والنقطة وعلامة الاستفهام وعلامة #
[^\s]*كل ما عدا ذلك حتى المسافة التالية
giإيجاد كل رابط، بأي حالة أحرف

ما يلتقطه وما يفوته

النصالنتيجة
https://logicutil.com/tool/regex-testerالعنوان كاملًا
http://example.org/page?q=1#topالعنوان كاملًا، مع الاستعلام والجزء
http://localhost:8080/xالعنوان كاملًا، مع المنفذ
HTTPS://EXAMPLE.COM/Xمطابَق، بفضل الراية i
https://例子.测试/路径مطابَق: تُحفظ النطاقات والمسارات غير اللاتينية
Visit https://example.com.https://example.com.، مع النقطة
(https://example.com/a)https://example.com/a)، مع القوس
www.example.comلا مطابقة: لا يوجد مخطط
ftp://files.example.comلا مطابقة: http وhttps فقط

نسخة أدق

لاستبعاد علامات الترقيم في النهاية، اختم المطابقة بـ lookahead: https?:\/\/[^\s/$.?#][^\s]*?(?=[\].,;:!?)]*(?:\s|$)). يأخذ هذا النمط أقصر سلسلة لا يليها إلا علامات ترقيم ثم مسافة أو نهاية النص، فيعطي Visit https://example.com. النتيجة https://example.com، ويعطي (https://example.com/a) النتيجة https://example.com/a. والثمن أن الرابط الذي ينتهي فعلًا بقوس، كما في بعض عناوين Wikipedia، يفقده.

إيجاد الروابط ليس تحققًا منها

نمط كهذا يجيب عن سؤال «هل في هذا النص شيء يشبه الرابط؟»، لا عن سؤال «هل هذا عنوان يعمل؟». ولقيمة واحدة في JavaScript، new URL(value) أكثر صرامة: فهو يرمي استثناءً مع https:// بلا مضيف إطلاقًا. استخدم التعبير النمطي لإيجاد المرشّحين في النص، ثم اترك القرار لـ new URL() أو لخادمك.

صفحات ذات صلة

حوّل الروابط التي وجدتها إلى Markdown بـ [$&]($&) في صفحة البحث والاستبدال بـ Regex، وانظر كيف تتصرّف الرايات في مختبِر Regex لـ JavaScript. ولعناوين البريد الإلكتروني مزالقها الخاصة، ويتناولها دليل Regex للبريد الإلكتروني.

أدلة ذات صلة