簡體   English   中英

R-在結尾處將字符串拆分兩個字符

[英]R - splitting a string two characters before the end

這是與先前查詢類似的問題

但是,這一次我想將郵政編碼分成兩個字符串,然后放在字符串末尾。 我該怎么做?

例如,我刪除了中央空格后,R中的郵政編碼數據如下所示:

Postcodes
AB46JK
AR148UI
D49IK
CB39EU

但是我想將郵政編碼划分為郵政編碼扇區,該扇區現在在字符串末尾包括所有兩個字符,因此它們看起來像這樣:

Postcodes
AB46
AR148
D49
CB39

幫助將不勝感激。

Base R,非正則表達式解決方案:

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

這是一個非正則表達式的解決方案。 您可以使用stringrstr_sub軟件包的位置,將每個字符串中的所有內容從頭至尾 str_sub

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

[1] "AB46"  "AR148" "D49"   "CB39" 
gsub("(.*).{2}$","\\1",postcodes)

您可以使用sub

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

或從tidyr extract

library(tidyr)
df %>% extract(Postcodes, "Postcodes", "(.*)..$")
#  Postcodes
#1      AB46
#2     AR148
#3       D49
#4      CB39

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM