longest common substring in R finding non-contiguous matches between the two strings

后端 未结 4 809
挽巷
挽巷 2020-11-29 07:21

I have a question regarding finding the longest common substring in R. While searching through a few posts on StackOverflow, I got to know about the qualV package. However,

4条回答
  •  心在旅途
    2020-11-29 08:15

    df <- data.frame(A. = c("Australia", "Network"),
                     B. = c("Austria", "Netconnect"), stringsAsFactors = FALSE)
    
     auxFun <- function(x) {
    
       a <- strsplit(x[[1]], "")[[1]]
       b  <- strsplit(x[[2]], "")[[1]]
       lastchar <- suppressWarnings(which(!(a == b)))[1] - 1
    
       if(lastchar > 0){
         out <- paste0(a[1:lastchar], collapse = "")
       } else {
         out <- ""
       }
    
       return(out)
     }
    
     df$C. <- apply(df, 1, auxFun)
    
     df
     A.         B.    C.
     1 Australia    Austria Austr
     2   Network Netconnect   Net
    

提交回复
热议问题