R - 在结束前将字符串拆分两个字符

时间:2016-09-13 21:43:40

标签: r string split character

这是一个类似的问题to this previous query.

但是,这次我想在字符串结尾之前将邮政编码分成两个字符。我该怎么办?

例如,我在R中的邮政编码数据看起来像这样,删除了中心空间:

Postcodes
AB46JK
AR148UI
D49IK
CB39EU

但我想将邮政编码拆分为邮政编码扇区,现在包括字符串结尾前的两个字符,所以它们看起来像这样:

Postcodes
AB46
AR148
D49
CB39

非常感谢帮助。

4 个答案:

答案 0 :(得分:4)

基础R,非正则表达式解决方案:

substring(postcodes, 1, nchar(postcodes)-2 )

答案 1 :(得分:3)

这是一个非正则表达式解决方案。您可以使用包 stringr str_sub的位置从每个字符串中拉出所有内容,从头到尾3。

library(stringr)
str_sub(c("AB46JK", "AR148UI", "D49IK", "CB39EU"), 1, -3)

[1] "AB46"  "AR148" "D49"   "CB39" 

答案 2 :(得分:2)

ls -l

答案 3 :(得分:1)

您可以使用sub

sub("..$", "", df$Postcodes)
# [1] "AB46"  "AR148" "D49"   "CB39" 

来自extract的{​​{1}}:

tidyr