从向量中每个字符串提取前N个字符

4

我有一个字符串向量:

v.string <- c('abc', 'beb', 'lol', 'heh', 'hah')

有没有一种方法可以从向量中提取前N个元素?因此,在上面的例子中,如果我想提取前两个,我将得到:
'ab','be','lo','he','ha'

还是需要循环并使用substr函数吗?我的向量相当长。
谢谢。
1个回答

9

you are looking for ?substr

 substr( v.string , start = 1 , stop = 2 )

(包括@Arun的评论)如果您想从倒数第二个字母开始,您也可以使用nchar函数,因此
# print the number of characters in each string in your character vector..
nchar( v.string ) 

# ..which gets used to..

# print the second-to-last character until the end of the string
substr( v.string , start = nchar( v.string ) - 1 , stop = nchar( v.string ) )

如果你想要第一个 n-1 个字符(假设你的字符串长度不总是相同的),那么请用 stop = nchar(v.string) - 1 替换 stop = 2 - Arun

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接