gpt4 book ai didi

regex - 删除 R 中欧元符号后的字符

转载 作者:行者123 更新时间:2023-12-04 09:43:42 26 4
gpt4 key购买 nike

我在“euro”变量中保存了一个欧元符号:

euro <- "\u20AC"
euro
#[1] "€"

“eurosearch”变量包含“此 SOW 中定义的服务,价格为 15,896.80 欧元(如果来回执行”)。

eurosearch
[1] "services as defined in this SOW at a price of € 15,896.80 (if executed fro"

我想要欧元符号后的字符“15,896.80(如果来回执行”)我正在使用这段代码:

gsub("^.*[euro]","",eurosearch)

但是我得到的结果是空的。如何获得预期的输出?

最佳答案

使用 base r 中的正则匹配或 stringr 中的 str_extarct

> x <- "services as defined in this SOW at a price of € 15,896.80 (if executed fro"
> regmatches(x, regexpr("(?<=€ )\\S+", x, perl=T))
[1] "15,896.80"

> gsub("€ (\\S+)|.", "\\1", x)
[1] "15,896.80"

使用变量。

euro <- "\u20AC"
gsub(paste(euro , "(\\S+)|."), "\\1", x)

如果这个使用变量的答案对你不起作用,那么你需要设置编码,

gsub(paste(euro , "(\\S+)|."), "\\1", `Encoding<-`(x, "UTF8"))

Source

关于regex - 删除 R 中欧元符号后的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31288513/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com