এই উত্তরটি লেখার সময় , আমাকে s-ফ্লেগ ( dotall- ডট মিলছে লাইন ব্রেকগুলি ) ব্যবহার না করে লাইন ব্রেকগুলিতে একচেটিয়াভাবে মিলতে হয়েছিল match
নিয়মিত অভিব্যক্তিগুলি পরীক্ষা করার জন্য ব্যবহৃত সাইটগুলিতে \nবা মেলে চেষ্টা করার সময় বিভিন্নভাবে আচরণ করে \r\n।
আমি লক্ষ্য করেছি
Regex101 শুধুমাত্র লাইন ব্রেককে সাথে মেলে
\n
( উদাহরণ - মুছুন\rএবং এটি মেলে)RegExr linebreaks সাথে মেলে তন্ন তন্ন উপর
\nকিংবা উপর\r\n
এবং আমি কিছু একটা LINEBREAK মেলে না করতে এটি, ছাড়া, করতে পারেনm-flag এবং\s
( উদাহরণস্বরূপ )Debuggex আরও বেশি বিভিন্ন আচরণ করবে:
মধ্যে এই উদাহরণে এটি শুধুমাত্র উপর মিলে যায়\r\n, যখন
এখানে এটি শুধুমাত্র উপর ম্যাচ\nএকই পতাকা এবং ইঞ্জিন নিদিষ্ট সঙ্গে,
আমি m-ফ্লেগ (মাল্টলাইন - একটি লাইনের ^শুরু এবং $শেষের সাথে মিল রাখে) সম্পর্কে পুরোপুরি সচেতন , তবে কখনও কখনও এটি কোনও বিকল্প নয়। সঙ্গে একই \s, যেমন ট্যাব এবং স্পেস, খুব মেলে।
ইউনিকোড নিউলাইন চরিত্রটি ব্যবহার করার জন্য আমার ধারণা \u0085সফল হয়নি, সুতরাং:
- নিয়মিত অভিব্যক্তিতে কোনও লাইন ব্রেক (সম্ভবত ভাষাটি নির্বিশেষে নির্বিশেষে) ম্যাচকে সংহত করার জন্য কোনও ব্যর্থ সাফ উপায় আছে?
- উল্লিখিত সাইটগুলি কেন আলাদাভাবে আচরণ করে (বিশেষত ডিবাগেক্স, কেবল
\nএকবারে এবং একবারে একবারে মিলছে\r\n)?
\r?\nউভয় \r\nএবং \nলাইন সমাপ্তি ক্রম মিলিয়ে । এটি পুরানো \rম্যাক সিনট্যাক্সের জন্য কাজ করে না , তবে এটি আজকাল খুব বিরল।
[\r\n]+- বা এর মতো কিছু