위치를 기준으로 문자열에서 삭제 작업을 수행하는 기능을 찾고 있습니다.문자열의 특정 위치에서 문자를 삭제하는 기능을 사용할 수 있습니다.
예를 들어, 지정된 캐릭터가
string1 <- "hello stackoverflow"
같은 가정하자, 나는 4, 10 및 18 위치를 삭제합니다.
선호 출력
"helo stakoverflw"
나는 그런 기능의 존재에 대해 잘 모르겠습니다.
위치를 기준으로 문자열에서 삭제 작업을 수행하는 기능을 찾고 있습니다.문자열의 특정 위치에서 문자를 삭제하는 기능을 사용할 수 있습니다.
예를 들어, 지정된 캐릭터가
string1 <- "hello stackoverflow"
같은 가정하자, 나는 4, 10 및 18 위치를 삭제합니다.
선호 출력
"helo stakoverflw"
나는 그런 기능의 존재에 대해 잘 모르겠습니다.
이것은 나를 위해 일했습니다.
string1 <- "hello stackoverflow"
paste((strsplit(string1, "")[[1]])[-c(4,10,18)],collapse="")
[1] "helo stakoverflw"
나는 문자의 벡터로 문자열을 분할
strsplit
을 사용하고 문자열로 다시 함께만을 원하는 문자를 붙여.
delChar <- function(x,eliminate){
paste((strsplit(x,"")[[1]])[-eliminate],collapse = "")
}
delChar(string1,c(4,10,18))
[1] "helo stakoverflw"
이 접근법을 사용하면 더 편리 할 것입니다 :'paste ((strsplit (string1, ""[[1])) [paste (string1, perl = TRUE) -c (4,10,18)], sep = "", collapse = "")'그래서 당신이 지우고 자하는 문자가 아닌 지우고 자하는 문자를 지정하십시오. –
하하는 귀하의 의견이 게시 될 때 문자 그대로 그 권리를 변경했습니다. 'c (-3)'보다는'-c()'와 좋은 점이있다. –
'paste ((strsplit (string1, ""[[1])) [c (-4, -10, -18)], collapse = "")'충분해야한다. 'sep'와'collapse' 둘 다. – Psidom
안녕하세요 모두들 :
또한이 작업을 수행하는 함수를 작성할 수 있습니다. 저는 기존의 기능에 대해 매우 흥미가 있습니다. 한 줄짜리도 쓸 수 있습니다. 어쩌면 ** 나는 단 하나의 라이너를 찾고 있습니다. ** 여기에 혼란을 일으켰습니다. 그 죄송합니다. – user2100721
기존 함수가 아니라 원하는 함수를 작성할 수 있습니까? –
불행히도 기존 기능이없는 것 같습니다. R은 파이썬처럼 한 문자 요소의 벡터로 문자열을 저장하지 않습니다. – Frank