JavaScript (en çok kullanılan sürümler) Unicode ürününü tam olarak desteklememektedir. Yani, \w
yalnızca Latin harfleri, ondalık basamakları ve alt çizgilarıyla eşleşir ([a-zA-Z0-9_]
) ve \b
, bir sözcük karakteri ile sözcük olmayan bir karakter arasındaki sınırla eşleşir.
.match(/[\wа-я]+/ig); // where а is the Cyrillic а.
Ya da isterseniz:
Latince ya Kiril kullanarak bir giriş dizesi tüm kelimeleri bulmak için, böyle bir şey yapmak zorunda kalacak Tabii bu irade Of
.match(/[\w\u0430-\u044f]+/ig);
Muhtemelen kodunuzu biraz düzeltmeniz gerektiği anlamına gelir, çünkü burada kelime sınırları yerine tüm sözcükleri eşleştirecektir. [а-я]
'un 'temel Kiril alfabesinde' açıklandığı gibi here numaralı tüm harflerle eşleştiğini unutmayın. Bu aralığın dışındaki harfleri eşleştirmek için, karakter kümesini, söz konusu harfleri içerecek şekilde gerektiği gibi değiştirebilirsiniz. ayrıca Rusça Ё/ё ile eşleşecek şekilde [а-яё]
kullanın. Alternatif
.replace(/\[{3}[^]]*]{3}/g, '')
, sen XRegExp proje-tabanına yeni özellikler eklemek için bir açık kaynak projesi bakmak isteyebilirsiniz:
Ayrıca üçlü braket desen basitleştiirlebilir dikkat JavaScript düzenli ifade motoru ve onun Unicode addon.
Yapmaya çalıştığınızdan emin değilsiniz, ama .trim() .bunu ayırın (/ \ s + /). – Bergi
@Bergi, OP bir dizgeyi "" gibi.... Bu "2 kelime olarak saymak isterse değil. –