使用 r 删除希伯来语 "niqqud"

removing Hebrew "niqqud" using r

一直在努力删除 niqqud(用于表示元音或区分希伯来字母表字母的替代发音的变音符号)。 我有例如这个变量: sample1 <- "הֻסְמַק"

而且我找不到有效的方法来删除字母下面的标志。

尝试过纵梁,str_replace_all(sample1, "[^[:alnum:]]", "") 尝试过 gsub('[:punct:]','',sample1)

没有成功...:-( 有什么想法吗?

您可以使用 \p{M} Unicode 类别将变音符号与类似 Perl 的正则表达式匹配,并且 gsub 所有这些都像这样:

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

结果:[1] "הסמק"

demo

\p{M} or \p{Mark}: a character intended to be combined with another character (e.g. accents, umlauts, enclosing boxes, etc.).

Regular-Expressions.info, "Unicode Categories" 查看更多内容。