2015-09-17 14 views
5
kullanarak silme

niqqud'u kaldırmak için mücadele ediyor (ünlü harfleri göstermek veya İbranice alfabesinin harflerinin alternatif telaffuzlarını ayırt etmek için kullanılan aksan işaretleri). Ben mesela bu değişkeni vardır: sample1 < - "הֻסְמַק"n İbranice "niqqud" öğesini r

Ve harflerin altında işaretlerini kaldırmak için etkili bir yol bulamıyorum.

:-(...

hiçbir başarı gsub('[:punct:]','',sample1) çalıştı str_replace_all(sample1, "[^[:alnum:]]", "") ile, kiriş çalıştı herhangi bir fikir?

+1

[gsub örneğim] 'e bakın (http://ideone.com/1IxAeA), sizin için işe yarıyor mu? –

+0

@stribizhev - çok teşekkür ederim! Bir çekicilik gibi çalıştı –

+0

[tag: hebrew] etiketini kullanmalısınız! ayrıca [etiket: unicode] – smci

cevap

2

Sen Perl benzeri regex ile aksan işaretleri maç için \p{M} Unicode kategorisini kullanın ve gsub olabilir birinde hepsini böyle gidin:

sample1 <- "הֻסְמַק" 
gsub("\\p{M}", "", sample1, perl=T) 

Sonuç: [1] "הסמק"

demo

\p{M} veya \p{Mark} bakınız: birleştirilebilir amaçlanan bir karakter başka bir karakter ile (ör aksan, umlauts, kapalı kutular, vb.).

Regular-Expressions.info, "Unicode Categories" adresinde daha fazla bilgi alabilirsiniz.

İlgili konular