পয়েন্টার্স দ্বারা প্রদত্ত উত্তরটি আমাদের বেশিরভাগের প্রয়োজন। তবে ম্যাথিয়াস ব্যেনেন্সের উত্তর অনুসরণ করে আমি একটি উইকিপিডিয়া ভ্রমণে গিয়ে এটি পেয়েছি: https://en.wikedia.org/wiki/Newline ।
নিম্নলিখিতটি একটি ড্রপ-ইন ফাংশন যা উপরের উইকি পৃষ্ঠার এই উত্তরটির সময় "নতুন লাইন" হিসাবে বিবেচনা করে সমস্ত কিছু প্রয়োগ করে।
যদি কিছু আপনার ক্ষেত্রে ফিট না করে তবে এটি সরিয়ে ফেলুন। এছাড়াও, আপনি যদি পারফরম্যান্সের সন্ধান করেন তবে এটি এটি নাও হতে পারে তবে একটি দ্রুত সরঞ্জামের জন্য যে কোনও ক্ষেত্রে কাজটি করে, এটি কার্যকর হবে।
// replaces all "new line" characters contained in `someString` with the given `replacementString`
const replaceNewLineChars = ((someString, replacementString = ``) => { // defaults to just removing
const LF = `\u{000a}`; // Line Feed (\n)
const VT = `\u{000b}`; // Vertical Tab
const FF = `\u{000c}`; // Form Feed
const CR = `\u{000d}`; // Carriage Return (\r)
const CRLF = `${CR}${LF}`; // (\r\n)
const NEL = `\u{0085}`; // Next Line
const LS = `\u{2028}`; // Line Separator
const PS = `\u{2029}`; // Paragraph Separator
const lineTerminators = [LF, VT, FF, CR, CRLF, NEL, LS, PS]; // all Unicode `lineTerminators`
let finalString = someString.normalize(`NFD`); // better safe than sorry? Or is it?
for (let lineTerminator of lineTerminators) {
if (finalString.includes(lineTerminator)) { // check if the string contains the current `lineTerminator`
let regex = new RegExp(lineTerminator.normalize(`NFD`), `gu`); // create the `regex` for the current `lineTerminator`
finalString = finalString.replace(regex, replacementString); // perform the replacement
};
};
return finalString.normalize(`NFC`); // return the `finalString` (without any Unicode `lineTerminators`)
});