我的挑战是将输入的句子中的10和1(即单词)转换为数字10和1:
example_input <- paste0("I have ten apple and one orange")
Run Code Online (Sandbox Code Playgroud)
数字可能会根据用户要求而更改,输入句子可以被标记:
my_output_toget<-paste("I have 10 apple and 1 orange")
Run Code Online (Sandbox Code Playgroud)
我们可以传递一个键/值对replacement,gsubfn以将这些单词替换为数字
library(english)
library(gsubfn)
gsubfn("\\w+", setNames(as.list(1:10), as.english(1:10)), example_input)
#[1] "I have 10 apple and 1 orange"
Run Code Online (Sandbox Code Playgroud)