2016-03-30 16 views
0

Regex kullanarak bir dizinin boş olup olmadığını nasıl kontrol edebilirim? Örneğin, kullanıcı harflerin çok fazla boşluk karakterini verirse, boş olarak kabul edilecektirRegex Bu iletinin boş olmadığını nasıl kontrol edebilirim

Dizede bir harf olup olmadığını kontrol etmek için [a-zA-Z0-9] denedim, ancak bu çalışmaz.

+3

Boş dize '^ \ s * $' olarak algılanabilir – rock321987

+0

@ rock321987 Bir yanıt gibi görünüyor. – dfsq

+0

@ rock321987 çalışıyor, lütfen doğrulamak için bir cevap verin –

cevap

3

Bu regex

^\s*$ 
kullanarak (sıfır veya daha fazla boşluk içerir) boş bir dize algılayabilir
1

Boş bir dize dışında her şeye izin veriyorsanız, Regex'i kullanmanız gerekmiyor, sadece beyaz boşlukları kesecek olan trim()'u kullanabilirsiniz.

Boolean("  ".trim()); //false 
Boolean("  b ".trim()); //true 
Boolean("\n\t\r ".trim()); //false 
Boolean("\n\th\r".trim()); //true 
+2

Geçerli bir çözüm de var, ancak OP sordu: * "Regex kullanarak bir dizinin boş olup olmadığını nasıl kontrol edebilirim?" *. – dfsq

+1

@dfsq Elinizde tek bir çekiç varsa, her şey bir çiviye benziyor. OP, burada bir normal ifadenin gerekli olmadığının farkında olmayabilir. –

+0

@AdrianWragg Güzel bir nokta. – dfsq

1

Bunu olmayan boşluk (yani baskı) karakterleri içerip içermediğini kontrol edebilirsiniz:

\S 

Bu ters eğik çizgi S.

İlgili konular