2013-06-26 16 views
12

Metin kutuma Farsça kelimeler girilirse true döndüren normal bir ifade yazmak istiyorum. Sadece Farsça karakterleri kabul etmesini istiyorum. Nasıl yaparım? Yalnızca Farsça karakterleri girmek için düzenli bir ifade nasıl yazılır

Bu çalıştı, ancak doğru çalışmıyor:

function Just_persian(str){ 
    var p=/[پچجحخهعغفقثصضشسیبلاتنمکگوئدذرزطظژؤإأءًٌٍَُِّ\s]+$/; 
    if(!str.match(p)) 
    alert("not format"); 
} 
+1

mı? –

+0

@BhavikKama: Hiçbir şey yazmadım. Benim sorum bunu nasıl yapabilirim. – Angel

+0

Yığın taşması, bir şey denedikten veya googledikten sonra çözümü bulmakla ilgili ... Bu konuda bir şey aramayı denediniz mi? –

cevap

20

Pers karakter U +, 06FF için U + 0600 (\u0600-\u06FF olarak karakter sınıfı içinde belirlenen) arasında olduğu, Arabic Unicode block dahilindedir .

function just_persian(str){ 
    var p = /^[\u0600-\u06FF\s]+$/; 

    if (!p.test(str)) { 
     alert("not format"); 
    } 
} 

Bu soru JavaScript adapte: Regex for check the input string is just in persian language

+0

Yani problemini çözdün mü? –

+1

Cevap tamamen yanlış. "@" ... "ile n'aber? .NET kodundan JS'ye kopyaladığınızda sadece sihirle çalışmazlar. – nhahtdh

+0

@nhahtdh, kendi sorunuzu reddetmeden veya kendi cevabını sunmadan incelikle düzenledi. Ona sahne. – Neil

0

Pers Karakterler aralığında şunlardır: [\ u0600- \ u06FF] Ve: [\ s]

Kullanım Bu Kod:

function Just_persian(str){ 
    var p=/@"^([\u0600-\u06FF]+\s?)+$"/; 
    if(!str.match(p)) 
    alert("not format"); 
} 

Bu Patern'de Letter ve Space Charachters bulunur.

4

persianRex'u kullanarak farklı klavye düzenlerindeki tüm Farsça karakterleri algılar ve açık kaynak kodludur.

İndirin ve proje klasörünüze yerleştirin. O zaman bu gibi HTML olarak şunlardır:

<script src="persian-rex/dist/persian-rex.js"></script> 

Sonra JavaScript bunu yapabilirsiniz: Kodunuzu nerede

function Just_persian(str){ 
    if(persianRex.text.test(str)) 
    alert("not format"); 
}