根据R中另一个向量中的字符从字符串中提取字符

萨瓦

我是社区的新手,希望我的问题和示例符合标准。

我有一个带有两个字符向量的数据框。向量a中的值的长度是变化的,向量b中的值都完全由一个字符组成。

a <- as.character(c("tsm", "skr", "fl", "pfl", "ts", "St", "S"))
b <- as.character(c("m", "k", "l", "l", "s", "t", "S"))
uedf <- data.frame(a, b)

我想直接在向量b中指定的字符的左侧提取a中的字符。该字符在字符串中的位置可以变化。因此,我要从第一个字符串中提取“ s”(m的左侧),在第二个字符串中再次提取“ s”(k的左侧),依此类推。

正如我无法弄清楚如何使用做grepl()(我不是很熟悉的正则表达式),我终于结束了的组合strsplit()str_sub()

str_sub(strsplit(uedf$a,split=uedf$b, fixed=FALSE), start = -1, end = -1)

在大多数情况下,此方法效果很好,除了第二个返回“)”而不是所需的“ s”的情况。

[1] "s" ")" "f" "f" "t" "S" "" 

有什么想法可能是为什么以及如何解决这个问题?提前致谢!

最高

我认为str_sub仅适用于字符串,但是第二个字符串strsplit为您提供了2个字符串的向量。

如果分隔符在每个字符串中仅出现一次,则可以完成此工作:

sapply(strsplit(a,split=b, fixed=FALSE), function(l) str_sub(l[[1]],-1,-1))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从Javascript中的另一个字符串中提取字符串

根据存在另一个字符串在Python中提取字符串的子字符串

从另一个以特殊字符开头和结尾的字符串中提取字符串

基于python中的另一个字符串从列表中提取字符串

如果匹配另一个列表中的值,则提取字符串

在 R 中提取字符串中的最后一个单词 - 面临错误

powershell 从变量中提取字符串以分配另一个变量

使用grep从另一个字符串中提取字符串

如何从一个文件中提取字符串以插入(修改)到另一个文件中?

从R中给定的向量字符串中提取字符串

在复杂字符串中的另一个字符串之后提取字符串

在R中仅一个已知字符串之间提取字符串

根据另一个字符串从字符串中提取数字

从R中向量中不同长度的字符串中提取字符值

如何在R中的另一个字符串向量中grep一个字符串向量

从字符串中提取字词的最后一个作为熊猫中的新列

根据Python中的一个条件提取字符串数据框中的数字

如何从php中第N个和第N + 1个“ breakword”之间的另一个字符串中提取字符串?

R根据另一个表中的搜索字符串更新表列

R 如何计算一个字符串向量在另一个字符串向量中的出现次数

如何提取字符串的前 X 个字符并将它们用于 C 中的另一个字符

如何使用map函数将向量中的子字符串顺序替换为R中另一个向量中的字符串?

通过另一个向量中包含的字符串动态引用向量名称

RegEx JS从另一个字符串中提取字符串匹配条件

在字符串的向量中搜索字符串的所有实例,在另一个字符串的向量中搜索

从R中的字符串中提取字母

从R中的url中提取字符串

将分隔字符串中的文本提取到另一个分隔字符串中 TSQL

JavaScript获取字符串在另一个字符串中的最后一个字符的位置