حلك غير دقيق ، فهو لا يغطي جميع الروابط ، مثال إذا كان الرابط Google فإنه لايتم إعتباره كرابط ..
لدي حل ، لكنني أريد أن أرى حلولكم لكي أقارنها بما عندي
السلام عليكم . نعم أعلم انه ليس شامل جميع الروابط . قمت بكتابه فقط من اجل تحويل الروابط بشكل عام للشكل الذي طلبته بالأعلي .. عامة لن أضع حل أخر بما أن الأخ ايجيبتنكوا تفضل ووضع حل له و أعتقد انه ان شاء الله سيظبط مع جميع الروابط (لم أقم بتجربته <<< يغلب علي النوم )..
بانتظار أي أسئلة أخري ان شاء الله ، الموضوع أكثر من رائع و سيفيد جداً الجميع
<?php $str = "http://www.google.com this is Google http://google.com Google Also !! http://google.com/?aaa&a=445as http://g-o-o-gle.com/folder1/folder2/index.xml http://my-sub-domain.google.com/folder1/folder2/index.xml http://www2.google.info";
ده اللي كنت عامل حسابه و خايف منه . ان اشرف يدخل و يرد بالموضوع
مجموعة تعديلات ممتازه يأشرف . بارك الله فيك .
Egyptechno
الله يكرمك ياباشا . مانا عارف أني الأصل
الفكره اني رديت حسب المتطلبات اللي كانت مذكور بالشكل للرابط المطلوب برد dev11 مع اني اعلم انها لن تكون شامله لجميع الروابط . لكن فضلت وضعها هكذا و لو طلب المزيد كنت هرد بالتعديلات الأكثر . لكن أشرف انهي الاجابه حلاص ووضعها
ياعزيزي .. ما أوضحته أننا نريد تعبيراً قياسياً متكاملاً أما ما وضعته أنا فما هو الا مثال على تنوع الروابط .
حسناً فهمت انا قصدك خطأ . المره القادمه هقرأ الطلب بتمعن و ليس بشكل سريع
إقتباس:
كود PHP:
'[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]'
هذا الحل وجدته هنا في سوالف ، وهو يفي بالغرض ..
تمام . لكن من نظري انه غير دقيق أيضاً للأسف. رأيت هذا النمط من قبل لل regular expressions لكن لم أعمل به . قم بالتجربه بنفسك . معني هذا كمثال انه يمكن وضع بروتوكلات غريبه غير ال ftp و ال http كمثال اني أكتب رابط هكذا zx://ass.com او أني اكتب الموقع بهذا الشكل zxe://ccccccc . لذلك بنظري الحلول الموجوده حتي الان بالموضوع أفضل و أدق
نريد تعبيرا قياسيا للتعرف على جميع الصور التي في رابط ما ..
مثلا Google
يقوم التعبير القياسي بالتعرف على جميع الصور التي في هذه الصفحة وطبعا كيفية قراءة الصفحة ليست هي مشكلتنا الآن
نريد تعبيرا قياسيا للتعرف على جميع الصور التي في رابط ما ..
مثلا Google
يقوم التعبير القياسي بالتعرف على جميع الصور التي في هذه الصفحة وطبعا كيفية قراءة الصفحة ليست هي مشكلتنا الآن
كتبت pattern بشكل سريع لمقارنة tags ال img . أتمني أن يكون المطلوب .. لم أجربه والله حتي لأني مضطر أخرج الان (حظكم دايماً اني بشوف المواضيع قبل ما أخرج بلحظات ) .. جربوه و بلغوني بالنتيجه <<< أهم شيء قبل أشرف ما يرجع
__________________
ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
الاتصال: daif@daif.net او جوال: 0556639884
الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .
- ماذا لو كان الوسم لا ينتهي بمثله ... أقصد مثل <hr /> - <br />
- لماذا وضعت U في التعبير الثاني + لماذا ايضا لم تضعه في التعبير الاول ؟
- ايضا لم افهم لماذا وضعت [A-Z][A-Z0-9] في الاستعلام الاول ولم يكن هكذا فقط [A-Z]+
__________________
ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
الاتصال: daif@daif.net او جوال: 0556639884
الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .
- ماذا لو كان الوسم لا ينتهي بمثله ... أقصد مثل <hr /> - <br />
كنت سأحاول تضمينه لو أنك قلت xhtml ، كود html أصعب للاكتشاف ، ومع ذلك يمكن بالطبع ، فلا شيء مستحيل .. سأحاول مالم يحاول الأعضاء اليوم إن شاء الله إذا كان في وقت ..
إقتباس:
- لماذا وضعت U في التعبير الثاني + لماذا ايضا لم تضعه في التعبير الاول ؟
التعبير الثاني إن لم أضع فيه U ستطغو الخاصية الأولى على جميع الخواص وتعتبر عنصراً واحداً مطابقاً للـ pattern .. بهذه الطريقة، سيقف عند أول إشارة مطابقة للأولى بدلاً من أن يتابع الإمساك ببقية النص ..
التعبير الأول ، ليس من الضروري أن يكون " طماعاً " أو Greedy .. فكل ما بين الوسمين يعتبر تابعاً لهما ..
إقتباس:
- ايضا لم افهم لماذا وضعت [A-Z][A-Z0-9] في الاستعلام الاول ولم يكن هكذا فقط [A-Z]+
لا يمكن أن يكون [A-Z]+ ، حيث أن هناك بعض الوسوم تحتوي على أرقام ، مثل h1 وغيره ، وكان بالإمكان أن يكون [A-Z0-9]+ فقط .. لكن حتى نضمن أن الوسم يبدأ بحرف ، وليس برقم ..
أمر آخر
الكود الذي طرحته في الأعلى لا يدعم Nested Tags ، أو الوسوم المتداخلة ، وبصراحة لم أتوصل لطريقة عملية لدعمها ، يمكن دعمها بطرق مرهقة برمجياً ، ومرهقة للسيرفر كذلك .. إذا استطعت الوصول إلى طريقة مناسبة سأقوم بإضافتها إن شاء الله ، وفي انتظار تعديلاتكم وإضافاتكم كذلك ..
قمت بإضافة U إلى التعبير الأول حتى نتمكن من وضع أكثر من تاج بنفس الاسم .. وقمت بإصلاح بعض المشاكل ، وكذلك جعلت كل tag له مصفوفة بداخلها نتائجها ، حتى لا تضارب الوسوم المتشابهة بالاسم في نفس المصفوفة ..
نعم اضافة المعدّل او المحوّل U الى التعبير مهمة جدا ... حتى يأخذ النتيجة قطعة قطعة بدلا من اخذها كلها كقطعة واحدة.
ليس لدي اي شيء آخر .
__________________
ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
الاتصال: daif@daif.net او جوال: 0556639884
الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .