العربية

كيفية إزالة فواصل الأسطر من النص

الصق النص في مجموعة أدوات النص. إذا كنت تريد كتلة واحدة مستمرة، فقم بتبديل البحث والاستبدال إلى وضع Regex، وابحث عن \s*\n\s* واستبدله بمسافة واحدة.

إذا كنت تريد الاحتفاظ بفواصل الفقرات، فاستخدم قطع الأسطر أولاً، ثم ابحث عن (?<!\n)\n(؟!\n) واستبدلها بمسافة. يتطابق هذا النمط مع سطر جديد لا يحتوي على سطر جديد على أي من الجانبين - أي التفاف منتصف الفقرة - ويترك الأسطر الجديدة المزدوجة بين الفقرات وحدها.

لماذا يصل النص مع فواصل الأسطر الصلبة

النسخ من PDF هو المصدر المعتاد. لا يحتوي PDF على فقرات — فهو يحتوي على نص موضوع على الصفحة — لذا تُدرج النسخة سطرًا جديدًا أينما انتهى السطر المرئي. الفقرة التي تشغل ستة أسطر في الصفحة تصل إلى ستة أسطر من النص.

البريد الإلكتروني ذو النص العادي هو المصدر المشترك الآخر. قام عملاء البريد الأقدم بتغليف الرسائل الصادرة بدقة بأحرف 72 أو 76، وتحتفظ الردود المقتبسة بهذه الفواصل إلى أجل غير مسمى.

السمة المميزة هي أن الفواصل تقع في منتصف الجملة، في نفس العمود تقريبًا، وليس في نهايات الجملة. وهذا ما يجعلها قابلة للإزالة ميكانيكيًا: يتم فصل فواصل الفقرات الحقيقية بسطر BLANK، ولا يتم فصل الالتفافات في منتصف الفقرة. كل شيء أدناه يعتمد على هذا الاختلاف.

حفظ الفقرات: طريقة النمط الواحد

يقرأ النمط: سطر جديد لا يسبقه سطر جديد ولا يتبعه سطر جديد. يتطابق التفاف منتصف الفقرة؛ يحتوي كل سطر جديد في الفاصل المزدوج على سطر جديد على جانب واحد، لذلك لا يتطابق أي منهما.

إذا رفضت الأداة النموذج مع وجود خطأ، فهذا يعني أن متصفحك لا يدعم البحث في الخلف. في هذه الحالة، استخدم الاستبدال \s*\n\s* الأبسط لربط كل شيء، وأعد إدخال فواصل الفقرات في كل ما تلصق النص فيه.

  1. اضغط على خطوط القطع. يؤدي هذا إلى إزالة المسافات البيضاء البادئة واللاحقة من كل سطر، بحيث يصبح فاصل الفقرة سطرين جديدين تمامًا بدلاً من سطر جديد ومسافة شاردة وسطر جديد آخر.
  2. ضع علامة على Regex.
  3. ابحث عن (?<!\n)\n(؟!\n) واستبدله بمسافة واحدة. اضغط على استبدال الكل.
  4. تحقق من العد. يجب أن يتطابق تقريبًا مع عدد الأسطر الملتفة، ويجب أن يكون أصغر من إجمالي عدد الأسطر بحوالي عدد الفقرات.

دمج كل شيء في كتلة واحدة

بالنسبة إلى عرض أسعار أو استعلام بحث أو أي شيء يدخل في حقل واحد، لا تحتاج إلى حماية الفقرات على الإطلاق.

في وضع Regex، ابحث عن \s*\n\s* واستبدله بمسافة واحدة. يمتص \s* على كلا الجانبين المسافة البادئة والمسافات الزائدة في نفس الوقت، لذلك لا تحتاج إلى تنظيف منفصل للمسافة المزدوجة بعد ذلك.

نهايات أسطر Windows، والأشياء الأخرى التي تسوء

  • إذا كان الاستبدال في \n يشير إلى صفر، أو يترك أحرفًا متناثرة، فإن النص له نهايات أسطر Windows. ابحث عن \r واستبدله بلا شيء أولاً؛ الذي يحول CRLF إلى LF ثم تتصرف الأنماط أعلاه.
  • الكلمات الموصولة المنقسمة عبر السطور - "inter-" ثم "national" - تصبح "international" بعد الانضمام. ابحث عن "-" واستبدله بأي شيء، لكن اقرأ العدد أولًا، لأن هذا النمط يطابق أيضًا الشرطات الصحيحة في النثر.
  • يمكن أن تظل المسافات المزدوجة موجودة إذا انتهى السطر بمسافة واستخدمت نمط البحث الخلفي. ابحث عن مسافتين، واستبدلهما بواحدة، وقم بتشغيله مرتين.
  • النص الذي لا يحتوي على أسطر فارغة بين الفقرات لا يحتوي على إشارة للحماية. لا يمكن لأي نمط استعادة حدود الفقرة التي لم يتم ترميزها مطلقًا، وسيتعين عليك إعادة إدراجها يدويًا.

شيئين حول وضع التعبير العادي لهذه الأداة

يتم تجميع الأنماط داخل الحارس. يمنحك النمط غير الصالح رسالة خطأ ويترك النص كما كان تمامًا — القوس المفتوح الوحيد هو حالة متوسطة عادية أثناء الكتابة، ولا ينبغي أن يؤدي إلى إتلاف عملك.

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

حقول البحث والاستبدال عبارة عن مدخلات ذات سطر واحد. يمكنك MATCH سطرًا جديدًا باستخدام \n، لكن لا يمكنك INSERT سطرًا واحدًا - يتم إدراج \n المكتوب في حقل الاستبدال كخط مائل عكسي متبوعًا بـ n. هذا هو السبب في أن الطريقة المذكورة أعلاه لا تحتاج أبدًا إلى إعادة السطر الجديد.

مثال عملي: تم نسخ فقرتين من PDF

يحتوي النص الملصق على فاصل ثابت بعد كل سطر مطبوع وسطر واحد فارغ بين الفقرتين. باستخدام / للسطر الجديد، يبدو كما يلي:

وأضاف أن "اللجنة اجتمعت يوم الثلاثاء لمراجعة / الاقتراح المقدم في شهر مارس / آذار. وأثار العديد من الأعضاء / مخاوف بشأن الجدول الزمني. / / سيتم تعميم نسخة منقحة قبل / الاجتماع المقبل".

هناك خمسة أسطر جديدة في المجمل: أربع لفات وفاصل فقرة واحد مكتوب كسطرين جديدين متتاليين. يجب أن يذهب أربعة من الخمسة.

  1. اضغط على خطوط القطع.
  2. حدد التعبير العادي، وابحث عن (?<!\n)\n(؟!\n)، واستبدله بمسافة، واستبدل الكل.
  3. قراءة العدد المبلغ عنه.

نتيجة: تُبلغ الأداة عن بدائل 3 — التفافات منتصف الفقرة الثلاثة — والنتيجة هي فقرتان، كل منهما على سطر واحد متواصل، ويفصل بينها سطر فارغ. سيؤدي استخدام \s*\n\s* بدلاً من ذلك إلى الإبلاغ عن 4 ودمج الفقرتين في فقرة واحدة، وهي الإجابة الصحيحة للاقتباس والإجابة الخاطئة هنا.

افتح الأداة

تنظيف النص في مجموعة أدوات النص

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

ما لا يغطيه هذا

  • هذا هو البحث والاستبدال، وليس إعادة التدفق. لا يمكن تمييز التفاف منتصف الجملة من سطر قصير عمدًا مثل كتلة عنوان أو بيت شعر أو قائمة ذات تعداد نقطي.
  • لا يمكن لحقل الاستبدال إدراج سطر جديد، لذا فإن أي أسلوب يحتاج إلى إعادة فواصل الأسطر يجب أن ينتهي في مكان آخر.
  • يحتاج نمط lookbehind إلى متصفح يدعم تأكيدات lookbehind. يُبلغ المتصفح الأقدم عن خطأ في النمط غير صالح بدلاً من الفشل بصمت.
  • تتم المعالجة على سلسلة المحادثات الرئيسية، لذلك قد يقوم مستند كبير جدًا بإيقاف الواجهة مؤقتًا لفترة وجيزة أثناء التحويل.
  • يقتصر التراجع على عمليات 50 الأخيرة.
  • لا يتم حفظ أي شيء بين الزيارات. تؤدي إعادة تحميل الصفحة إلى تجاهل عملك، حسب التصميم.