আমি জাভাস্ক্রিপ্টে সাদা স্পেস অক্ষরগুলির সমস্ত উপস্থিতি (স্পেস, ট্যাব, নিউলাইন) প্রতিস্থাপন করতে চাই।
কীভাবে করবেন?
আমি চেষ্টা করেছিলাম:
str.replace(/ /gi, "X")
আমি জাভাস্ক্রিপ্টে সাদা স্পেস অক্ষরগুলির সমস্ত উপস্থিতি (স্পেস, ট্যাব, নিউলাইন) প্রতিস্থাপন করতে চাই।
কীভাবে করবেন?
আমি চেষ্টা করেছিলাম:
str.replace(/ /gi, "X")
উত্তর:
তুমি চাও \s
স্থান, ট্যাব, ফর্ম ফিড, লাইন ফিড সহ একক সাদা স্থানের অক্ষরের সাথে মেলে।
সমতুল্য
[ \f\n\r\t\v\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]
মধ্যে ফায়ারফক্স এবং [ \f\n\r\t\v]
এ আই ই ।
str = str.replace(/\s/g, "X");
replace
ফাংশনটি সংশোধন করে না তা দেখাতে মনে রাখার জন্য +1 str
, সুতরাং আপনাকে এটি পুনরায় বরাদ্দ করতে হবে।
perl = TRUE
, যেমনgsub(pattern = "[\\s]+", ..., perl = TRUE)
\s
একটি মেটা চরিত্র যা সমস্ত সাদা স্থান জুড়ে। আপনার এটিকে কেস-সংবেদনশীল করার দরকার নেই - সাদা জায়গার ক্ষেত্রে কেস নেই।
str.replace(/\s/g, "X")
আমরা যদি একটি একক অক্ষর দিয়ে সমস্ত একাধিক যোগদান করা ফাঁকা স্থান পরিবর্তন করতে চান তবে আমরা এটি ব্যবহার করতে পারি:
str.replace(/\s+/g,'X');
এটি এখানে কর্মে দেখুন: https://regex101.com/r/d9d53G/1
ব্যাখ্যা
/
\s+
/ ছ
\s+
যে কোনও সাদা স্থানের অক্ষরের সাথে মিল (সমান [\r\n\t\f\v ]
)+
কোয়ান্টিফায়ার - এক এবং সীমাহীন সময়ের মধ্যে ম্যাচগুলি, যতবার সম্ভব সম্ভব হয়, প্রয়োজন হিসাবে ফিরে দেওয়া (লোভী)
আপনি চেষ্টা করেছেন \s
?
str.replace(/\s/g, "X");
এটা চেষ্টা কর:
str.replace(/\s/g, "X")
\s\n\t
মিলগুলি: কোনও হোয়াইটস্পেস অক্ষর, তারপরে একটি নতুন লাইন, তারপরে ট্যাব।
আসলে এটি কাজ হয়েছে কিন্তু
শুধু এই চেষ্টা করুন।
স্ট্রিং ভেরিয়েবলের মতো মান / \ গুলি / জি নিন
String a = /\s/g;
str = str.replaceAll(a,"X");
replaceAll
থেকে এলে?
আমি আন্ডারস্কোর স্ট্রিং থেকে "স্লগাইফাই" পদ্ধতিটি ব্যবহার করেছি এবং এটি একটি কবজির মতো কাজ করেছে:
https://github.com/epeli/underscore.string#slugifystring--string
দুর্দান্ত জিনিসটি হ'ল আপনি সত্যিই এই পদ্ধতিটি আমদানি করতে পারেন, পুরো লাইব্রেরিটি আমদানির দরকার নেই।