在 Rstudio 中使用 'str_extract_all' 函数 (stringr) 后不显示 Unicode 字符
Unicode characters not showing after using 'str_extract_all' function (stringr) in Rstudio
我正在尝试使用 'str_extract_all' stringr 函数从一系列 .txt 文档中提取一系列单词。一切正常,除了我得到的结果不显示 Unicode 字符(在提取信息的 UTF-8 文本中很好)。有人知道为什么会这样吗?
[我在 Windows 10.1 上使用 RStudio]
我已经通过以下命令将我的 5 个 .txt 文档(小说)语料库转换为数据框:
tbl <- list.files(pattern = "*.txt") %>%
map_chr(~ read_file(.)) %>%
data_frame(text = .)
Unicode 字符在 'tbl' 上看起来很好,但是当我 运行 str_extract_all 函数时,它们消失了。这是我的代码:
uppercase <- sapply(str_extract_all(tbl, '(?<!^|\.\s|\?\s|\!\s)[A-Z][a-z]+'), paste)
这是我得到的结果:
[1,] "For"
[2,] "Ant"
[3,] "Pati"
等等
什么时候应该读作:
[1,] "For"
[2,] "Antón"
[3,] "Patiño"
等等
这是一个 stringr 错误,还是有人以前遇到过类似的事情?任何帮助都感激不尽。谢谢!
不幸的是,字符 class [A-z]
(及其子集 [A-Z]
、[a-z]
)不适用于特殊字符,例如 ñ
和 ó
。 [[:alpha:]]
(字母字符)另一方面似乎有效。
stringr::str_extract_all(c("Antón", "Patiño"), '[A-z]+')
returns:
[[1]]
[1] "Ant" "n"
[[2]]
[1] "Pati" "o"
而
stringr::str_extract_all(c("Antón", "Patiño"), '[[:alpha:]]+')
returns 期望的结果:
[[1]]
[1] "Antón"
[[2]]
[1] "Patiño"
我正在尝试使用 'str_extract_all' stringr 函数从一系列 .txt 文档中提取一系列单词。一切正常,除了我得到的结果不显示 Unicode 字符(在提取信息的 UTF-8 文本中很好)。有人知道为什么会这样吗?
[我在 Windows 10.1 上使用 RStudio]
我已经通过以下命令将我的 5 个 .txt 文档(小说)语料库转换为数据框:
tbl <- list.files(pattern = "*.txt") %>%
map_chr(~ read_file(.)) %>%
data_frame(text = .)
Unicode 字符在 'tbl' 上看起来很好,但是当我 运行 str_extract_all 函数时,它们消失了。这是我的代码:
uppercase <- sapply(str_extract_all(tbl, '(?<!^|\.\s|\?\s|\!\s)[A-Z][a-z]+'), paste)
这是我得到的结果:
[1,] "For"
[2,] "Ant"
[3,] "Pati"
等等
什么时候应该读作:
[1,] "For"
[2,] "Antón"
[3,] "Patiño"
等等
这是一个 stringr 错误,还是有人以前遇到过类似的事情?任何帮助都感激不尽。谢谢!
不幸的是,字符 class [A-z]
(及其子集 [A-Z]
、[a-z]
)不适用于特殊字符,例如 ñ
和 ó
。 [[:alpha:]]
(字母字符)另一方面似乎有效。
stringr::str_extract_all(c("Antón", "Patiño"), '[A-z]+')
returns:
[[1]]
[1] "Ant" "n"
[[2]]
[1] "Pati" "o"
而
stringr::str_extract_all(c("Antón", "Patiño"), '[[:alpha:]]+')
returns 期望的结果:
[[1]]
[1] "Antón"
[[2]]
[1] "Patiño"