JavaScript'teki tüm boşluk karakterlerini (boşluk, sekme, yeni satır) değiştirmek istiyorum.
Nasıl yapılır?
Denedim:
str.replace(/ /gi, "X")
JavaScript'teki tüm boşluk karakterlerini (boşluk, sekme, yeni satır) değiştirmek istiyorum.
Nasıl yapılır?
Denedim:
str.replace(/ /gi, "X")
Yanıtlar:
İstediğiniz \s
Boşluk, sekme, form besleme, satır besleme dahil tek bir beyaz boşluk karakteriyle eşleşir.
Eşittir
[ \f\n\r\t\v\u00a0\u1680\u2000-\u200a\u2028\u2029\u202f\u205f\u3000\ufeff]
içinde Firefox ve [ \f\n\r\t\v]
içinde IE .
str = str.replace(/\s/g, "X");
replace
işlevin değişmediğini hatırladığınız için str
, onu yeniden atamanız gerekir.
perl = TRUE
gibigsub(pattern = "[\\s]+", ..., perl = TRUE)
Tek bir karakterle birleştirilmiş birden çok boşlukun tümünü değiştirmek istiyorsak bunu da kullanabiliriz:
str.replace(/\s+/g,'X');
Burada iş başında görün: https://regex101.com/r/d9d53G/1
açıklama
/
\s+
/ g
\s+
boşluk karakterleriyle eşleşir (eşittir [\r\n\t\f\v ]
)+
Nicelik belirteci - Mümkün olduğunca çok kez bir ve sınırsız kez eşleşir, gerektiğinde geri verir (açgözlü)
Denedin \s
mi?
str.replace(/\s/g, "X");
Bunu dene:
str.replace(/\s/g, "X")
\s\n\t
eşleşmeler: herhangi bir boşluk karakteri, ardından bir yeni satır ve ardından sekme.
Aslında çalıştı ama
sadece şunu dene.
/ \ s / g değerini şöyle bir dize değişkenine alın
String a = /\s/g;
str = str.replaceAll(a,"X");
replaceAll
gelen?
Ben underscore.string "slugify" yöntemini kullandım ve bir cazibe gibi çalıştı:
https://github.com/epeli/underscore.string#slugifystring--string
Harika olan şey, bu yöntemi gerçekten içe aktarabilmenizdir, tüm kütüphaneyi içe aktarmanıza gerek yoktur.