সমস্ত সাদা স্থান অক্ষর প্রতিস্থাপন করুন


136

আমি জাভাস্ক্রিপ্টে সাদা স্পেস অক্ষরগুলির সমস্ত উপস্থিতি (স্পেস, ট্যাব, নিউলাইন) প্রতিস্থাপন করতে চাই।
কীভাবে করবেন?

আমি চেষ্টা করেছিলাম:

str.replace(/ /gi, "X")


1
"এক্স" কী এবং কেন?
মুহাম্মদ শাহজাদ

স্ট্রিং.রেপ্লেস ('', 'এক্স') সম্পর্কে কী;
রমেশ রাজেন্দ্রন

উত্তর:


315

তুমি চাও \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");

41
replaceফাংশনটি সংশোধন করে না তা দেখাতে মনে রাখার জন্য +1 str, সুতরাং আপনাকে এটি পুনরায় বরাদ্দ করতে হবে।
ফিশব্যাসকেট গর্ডো

1
একটি ফাংশনে, আপনি str.replace ফিরে আসতে পারেন, যাতে আপনাকে সেই সুযোগে বরাদ্দ দেওয়ার প্রয়োজন হয় না।
স্টিভ কে

আর ব্যবহার করার জন্য মনে রাখবেন perl = TRUE, যেমনgsub(pattern = "[\\s]+", ..., perl = TRUE)
এমএস বেরেেন্ডস

30

\sএকটি মেটা চরিত্র যা সমস্ত সাদা স্থান জুড়ে। আপনার এটিকে কেস-সংবেদনশীল করার দরকার নেই - সাদা জায়গার ক্ষেত্রে কেস নেই।

str.replace(/\s/g, "X")

19

আমরা যদি একটি একক অক্ষর দিয়ে সমস্ত একাধিক যোগদান করা ফাঁকা স্থান পরিবর্তন করতে চান তবে আমরা এটি ব্যবহার করতে পারি:

str.replace(/\s+/g,'X');

এটি এখানে কর্মে দেখুন: https://regex101.com/r/d9d53G/1

ব্যাখ্যা

/ \s+/ ছ

  • \s+যে কোনও সাদা স্থানের অক্ষরের সাথে মিল (সমান [\r\n\t\f\v ])
  • + কোয়ান্টিফায়ার - এক এবং সীমাহীন সময়ের মধ্যে ম্যাচগুলি, যতবার সম্ভব সম্ভব হয়, প্রয়োজন হিসাবে ফিরে দেওয়া (লোভী)

  • গ্লোবাল প্যাটার্ন পতাকা
    • g modifier : g lobal। সমস্ত ম্যাচ (প্রথম ম্যাচের পরে ফিরবে না)


4

আপনি যদি ব্যবহার

str.replace(/\s/g, "");

এটি সমস্ত সাদা স্থানকে প্রতিস্থাপন করে। উদাহরণ স্বরূপ:

var str = "hello my world";
str.replace(/\s/g, "") //the result will be "hellomyworld"


3

না / জিআই কিন্তু / জি

var fname = "My Family File.jpg"
fname = fname.replace(/ /g,"_");
console.log(fname);

দেয়

"My_Family_File.jpg"

1

আসলে এটি কাজ হয়েছে কিন্তু

শুধু এই চেষ্টা করুন।

স্ট্রিং ভেরিয়েবলের মতো মান / \ গুলি / জি নিন

String a = /\s/g;

str = str.replaceAll(a,"X");

তুমি কোথা replaceAllথেকে এলে?
আয়নেল লুপু

0

আমি আন্ডারস্কোর স্ট্রিং থেকে "স্লগাইফাই" পদ্ধতিটি ব্যবহার করেছি এবং এটি একটি কবজির মতো কাজ করেছে:

https://github.com/epeli/underscore.string#slugifystring--string

দুর্দান্ত জিনিসটি হ'ল আপনি সত্যিই এই পদ্ধতিটি আমদানি করতে পারেন, পুরো লাইব্রেরিটি আমদানির দরকার নেই।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.