首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从字符串中删除阿拉伯文本

问如何从字符串中删除阿拉伯文本
EN

Stack Overflow用户
提问于 2021-03-04 20:44:46
回答 2查看 163关注 0票数 1

我已经将描述也门地区霍乱病例的一些数据从一个在线数据库复制到一个文本文件中。每个地区的名称都是用英语和阿拉伯语在一个字符串中给出的。我想去掉R中的阿拉伯语,只留下英文名字。

这是英语/阿拉伯语字符串读入R时的样子:

regions <- c("Al Hudaydah الحديدة", "Hajjah حجة")

我希望只剩下英文版的"Al Hudaydah" "Hajjah"

我试过使用str_replace_all(regions, "[^[:alnum:]]", "")和replace_non_ascii(regions),但它没有给我想要的东西。

有什么想法吗?

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2021-03-04 21:01:58

最简单的方法可能是简单地使用gsub

代码语言:javascript
复制
gsub("[^A-Za-z0-9 ]", "", regions)
票数 1
EN

Stack Overflow用户

发布于 2021-03-05 23:31:50

编辑:我已经找到了问题的解决方案。问题出在文本文件的读入过程中。如果它包含阿拉伯语(或任何非拉丁文字),则需要使用encoding = 'UTF-8'

例如:

txt <- readLines("Arabic_English_script.txt")返回

"Al Hudaydah­§“Š­¨©”"Taizz?“

而txt <- readLines("Arabic_English_script.txt", encoding = 'UTF-8')返回

塔伊兹"Al Hudaydahالحديدة“”

تعز“

正确导入文本后,gsub("[^[:alnum:]]", "", txt)将返回

"AlHudaydah“"Taizz”

(请注意,它仍会删除空格。不确定如何修复这个问题。)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66475297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档