gpt4 book ai didi

r - 从R中的多行字符中提取

转载 作者:行者123 更新时间:2023-12-05 03:32:34 25 4
gpt4 key购买 nike

这是我的特征向量:

my_string <- "\n
1. the user first name: Jamie.xx \n
2. the user name: yumi.xx \n
3. the name is: Myrile.xx \n
...
"

如您所见,数据相当随机且不系统。例如,冒号符号并非每次都位于同一位置。

我尝试使用 Regex R 表达式:

y <- gsub("\\:(.)(.*?)\\n","\\1",my_string)

我想要的结果是:

the user first name
the user name
the name is

然而,我所拥有的是:

\n1. the user first name 2. the user name 3. the name is

我不确定哪里出错了;有人能帮我吗?对于两件事,我希望内容不包括 (: 或 1. 2. 3.)。

其次,我也想删除\n 并将 my_string 转换为列表。

谢谢

最佳答案

这是一种有效的 sub 方法:

my_string <- "\n
1. the user first name: Jamie.xx \n
2. the user name: yumi.xx \n
3. the name is: Myrile.xx \n"

output <- gsub("(?<=\n)\\d\\.\\s*(.*?):.*?\n", "\\1", my_string, perl=TRUE)
output <- sub("^\\s*|\\s*$", "", output)
output # if you want a newline-separated string, stop here

lines <- strsplit(output, "\n")[[1]]
lines # if you want a vector of lines, then use this

[1] "the user first name\nthe user name\nthe name is"
[1] "the user first name" "the user name" "the name is"

关于r - 从R中的多行字符中提取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70443897/

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