كيفية إزالة اسطر تحتوي على نفس الكلمة او العكس notepad++

دعنا نستخدم محرر النصوص الممتاز من طرف ثالث Notepad ++ (مجاني) لحذف الأسطر التي تحتوي على كلمة في ملف يستند إلى نص ، وذلك باستخدام طرق مختلفة.

إزالة الاسطر او الخطوط التي تحتوي على كلمة أو عبارة أو سلسلة في ملف نصي

السيناريو: لدي ملف مضيف ضخم يحتوي على آلاف الأسطر فيه. أريد إزالة إدخالات خادم إعلانات MSN من الملف. بمعنى آخر ، أحتاج إلى إزالة الأسطر التي تحتوي على السلسلة ".msn.com" في ملف المضيفين. لنستخدم Notepad ++ لهذا المنصب.
الأسلوب 1: إزالة الأسطر باستخدام ميزة Bookmark في Notepad ++

  1. افتح الملف المستند إلى النص باستخدام Notepad ++
  2. اضغط على Ctrl + F لفتح مربع الحوار "Find and Replace".
  3. انقر لتحديد Mark التبويب.
  4. اكتب كلمة أو عبارة البحث في مربع النص "Find what". في هذا المثال ، سأكتب .msn.com
  5. تمكين مربع اختيار Bookmark line.
  6. اضبط Search Mode على Normal.

7. انقر فوق "Mark All". هذه العلامات (bookmarks) جميع الأسطر التي تحتوي على السلسلة .msn.com ، كما هو موضح أدناه سوف يتم تحديدها بلون الاحمر
8. أغلق مربع الحوار "بحث" بالنقر فوق "Close"
9. من قائمة "Search menu" ، انقر فوق "Bookmark" ، وانقر فوق "Remove Bookmarked Lines"

Remove Bookmarked Lines

يؤدي ذلك إلى إزالة جميع الأسطر التي تحتوي على سلسلة البحث / الكلمة / العبارة في الملف النصي.اي بمعنى اخر سوف يتم حذف جميع الاسطر التي تحتوي على نفس كلمة التي حددتها و حذف جميع اسطر بلون الاحمر لكي تفهم اكثر.
كيفية إزالة الخطوط التي لا تحتوي على كلمة أو سلسلة؟
للقيام بعكس ما سبق - أي حذف الخطوط التي لا تحتوي على كلمة أو عبارة:
كرر الخطوات 1 ←8 أعلاه.
في الخطوة 9 ، من القائمة "بحث" في Notepad ++ ، انقر فوق "Remove Unmarked Lines"

Remove Unmarked Lines

يؤدي ذلك إلى إزالة جميع الأسطر باستثناء تلك التي تحتوي على كلمة البحث أو السلسلة بمعنى اخر عدم حذف اسطر بلون الاحمر التي تحتوي على تلك الكلمة وحذف الاسطر الاخرى التي لا تحتوي على تلك الكلمة.

الطريقة 2: حذف الأسطر باستخدام أسلوب Find and Replace  بـ RegEx

تستخدم هذه الطريقة التعبيرات المعتادة للعثور على الخطوط التي تحتوي على كلمة أو عبارة واستبدالها. هذه الطريقة قوية جدًا حيث يمكنك مطابقة أي شيء تقريبًا (مثل الكلمات "تبدأ بـ" ، أو الخطوط التي لها "نمط" محدد.)
افتح الملف المستند إلى النص باستخدام Notepad ++.
اضغط على Ctrl + F لفتح مربع الحوار "Find and Replace".
انقر فوق علامة تبويب Replace لتحديده.
في مربع النص ": Find what" ، اكتب كلمة البحث ، مسبوقة ومتبوعة "*." على سبيل المثال ، إذا كنت تريد استبدال الخطوط التي تحتوي على books ، فأنت تكتب "*. book*."
حيث إنه يختلف قليلاً في حالتنا حيث لدينا اثنين (special). (dot) الأحرف في سلسلة البحث لدينا "msn.com." لذلك نحن بحاجة إلى كتابة ما يلي في مربع ": Find what" :
.*\.msn\.com.*
*.- يطابق أي حرف أي عدد من التكرار.
.\- يُستخدم للهروب من النقطة (.) لذا ، فإن النظام يفهم أنك تتطلع إلى مطابقة السلسلة "msn.com."

5-اضبط Search Mode على Regular expression
6-تأكد من ترك مربع النص ": Replace with" فارغا.


7-انقر فوق "Replace All". الآن ، يستبدل Notepad ++ كل تلك الخطوط المطابقة بخطوط فارغة. في مربع الحوار "استبدال" ، سترى عدد التكرارات التي تم استبدالها. بعد ذلك ، تحتاج إلى إزالة هذه الأسطر الفارغة.
8-أغلق مربع الحوار Find / Replace.
9-لإزالة الخطوط الفارغة ، انقر فوق Edit ← ثم Line Operations ←ثم Remove Empty Lines.


يؤدي ذلك إلى إزالة جميع الأسطر باستثناء تلك التي تحتوي على كلمة البحث أو السلسلة.

كيفية حذف الخطوط التي لا تحتوي على كلمة أو سلسلة باستخدام Regex؟

للقيام بعكس ما سبق - أي حذف الخطوط التي لا تحتوي على كلمة أو عبارة باستخدام Regex:

اتبع الخطوات من 1 إلى 3 أعلاه.
في الخطوة 4 ، استخدم regex للبحث عن الكلمة الأساسية  
 ^(?!.*\.msn\.com).*$

شاهد مثال على الصورة

يبحث مشغل البحث أعلاه عن سطور لا تحتوي على الكلمة أو السلسلة "msn.com." ويستبدلها بسطور فارغة.
3-ثم اتبع الخطوات من 5 إلى 9 لإزالة الأسطر الفارغة.
هذا هو! نأمل أن تكون الأساليب المذكورة أعلاه مفيدة في إزالة الأسطر التي تحتوي (أو لا تحتوي) على سلسلة أو كلمة أو عبارة محددة في ملف نصي.

مواضيع قد تهمك :

    طلب صغير واحد: إذا أعجبك هذا المنشور ، فيرجى مشاركة هذا؟

    إن مشاركة "صغيرة" منك ستساعد كثيرًا بشكل كبير في نمو هذه المدونة. بعض الاقتراحات العظيمة:
    تعلق عليه!
    شاركها مع مدونتك المفضلة + Facebook، Reddit
    غردها!
    شكرا جزيلا لدعمكم يا قاريء. لن يستغرق أكثر من 10 ثوانٍ من وقتك. أزرار المشاركة أدناه↓↓↓↓. :).