숫자 길이 범위 10과 11의 문자열이있는 열이 있습니다. 다음은 열에있는 일부 값의 예입니다.
column=c("5699420001","00409226602")
처음 네 자리 (10 자 문자열)와 처음 다섯 자리 (11 자 문자열) 뒤에, 두 길이 모두 두 번째 네 자리 뒤에 하이픈을 삽입하려면 어떻게해야합니까? 출력은 아래와 같습니다. 이것을 사용 stringr
하고 싶었습니다 .
column_standard=c("5699-4200-01","00409-2266-02")
stringr
의 str_replace()
기능이있는 캡처 그룹을 사용하는 솔루션은 다음과 같습니다 .
library(stringr)
column <- c("5699420001","00409226602")
column_standard <- sapply(column, function(x){
ifelse(nchar(x) == 11,
stringr::str_replace(x, "^([0-9]{5})([0-9]{4})(.*)", "\\1\\-\\2-\\3"),
stringr::str_replace(x, "^([0-9]{4})([0-9]{4})(.*)", "\\1\\-\\2-\\3"))
})
column_standard
# 5699420001 00409226602
# "5699-4200-01" "00409-2266-02"
코드는 매우 자명해야합니다. 요청시 자세한 설명을 제공 할 수 있습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다