繁体   English   中英

如何在R中对字符向量进行子串化

[英]how to substring character vector in R

我在r中有一个字符向量,如下所示

"BEND"        "30⁰-4,9˚-1"

我想只对"30⁰-4,9˚-1" degrees进行子串处理。

 "BEND"        "30,9"

我们可以使用str_extract

library(stringr)
sapply(str_extract_all(v1, "[A-Z]+|\\d+(?=°)"), paste, collapse=",")
@[1] "BEND" "30,9"

或将unicode符号( \\\\p{So} )前面的数字( \\\\d+ )匹配

sapply(str_extract_all(v1, "[A-Z]+|\\d+(?=\\p{So})"), paste, collapse=",")
#[1] "BEND" "30,9"

数据

v1 <- c("BEND", "30°-4,9°-1")

如果示例中的字符串表示所有字符串的模式,则可以在基数R中使用gsub

vec <- c("BEND", "30⁰-4,9˚-1")  # the data

gsub(".-[0-9]+", "", vec)
# [1] "BEND" "30,9"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM