سؤال

لدي ملف txt ضخم وقائمة Editpad Pro لعناوين url التي تحتوي على صور في المجلد الجذر.

http://www.othersite.com/image01.jpg
http://www.mysite.com/image01.jpg
http://www.mysite.com/category/image01.jpg

كيف يمكنني تغيير فقط تلك التي تحتوي على صور في الجذر باستخدام regexp؟

http://www.othersite.com/image01.jpg
http://www.NEW_WEBSITE.com/image01.jpg
http://www.mysite.com/category/image01.jpg

أنا استخدم تطبيق RegExr عبر الإنترنت.

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

المحلول

بحث واستبدال (غير حساس لحالة الأحرف، التعبير العادي):

http://www\.mysite\.com/([^/]*\.(?:jpg|gif|png))

مع:

http://www\.NEW_WEBSITE\.com/\1

يحرر

ونعم، سيؤدي هذا أيضًا إلى إعادة إنشاء ملفات مثل http://www.mysite.com/.jpg, ، في حالة وجود أي من هذه الملفات أو الدلائل.إذا كان أي شخص لا يحب هذا، فما عليك سوى استبداله * مع + -- أو مع {X,} إذا كان افتراضك هو ذلك يحتاج ملف الصورة إلى اسم حرف X على الأقل إلخ.إلخ.-- لكن حقًا, ، ربما يكون هذا خارج نطاق ما lab72 يحاول تحقيق (أي. لا التحقق من صحة اسم ملف الصورة.)

نصائح أخرى

url1.replace(/((https?:\/\/www.?)(\w*?)(.com\/image\d*?\.(png|gif|jpg))/, 
             "$1newName$3");

وشيء من هذا القبيل ما سبق يجب أن تعمل. هو رمز في AS (لم يجمع على الرغم من: P). لاحظ أن $ 2 مباريات اسم المواقع التي نقوم باستبدال مع yoursite

يستبدل

http://www\.mysite\.com/image(.*)

مع

http://www.newsite.com/image$1

ومع ذلك، قد تكون مهتمًا أيضًا بالحصول على لائقة محرر النص.برنامج الفلاش هذا هو حقا مقزز.لا يزال بإمكانك استخدام نفس التعبير العادي، على الرغم من أنه سيتعين عليك استبدال علامة الدولار $ مع شرطة مائلة للخلف \.

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