Tüm boşluk karakterlerini değiştir


Yanıtlar:


315

İ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");

41
+1, replaceişlevin değişmediğini hatırladığınız için str, onu yeniden atamanız gerekir.
FishBasketGordo

1
Bir işlevde, str.replace öğesini döndürebilirsiniz, böylece bu kapsamda atamanız gerekmez.
Steve K

R kullanmak için Remember perl = TRUEgibigsub(pattern = "[\\s]+", ..., perl = TRUE)
MS Berends

30

\stüm beyaz alanı kapsayan bir meta karakterdir. Büyük / küçük harfe duyarlı olmanıza gerek yoktur - beyaz alanın büyük / küçük harf kullanımı yoktur.

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

19

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ü)

  • Global desen bayrakları
    • g değiştirici: g lobal. Tüm maçlar (ilk maçtan sonra geri dönme)


4

Eğer kullanırsan

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

tüm boşlukların yerini alıyor. Örneğin:

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

4

Bunu dene:

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

Bu işe yaramıyor. \s\n\teşleşmeler: herhangi bir boşluk karakteri, ardından bir yeni satır ve ardından sekme.
Daniel Cassidy

3

/ Gi değil / / g

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

verir

"My_Family_File.jpg"

1

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");

nereden buldun replaceAllgelen?
Ionel Lupu

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.