From 476f164a7f4e13027febdd5c79220e754f835ef8 Mon Sep 17 00:00:00 2001 From: jrwishart Date: Thu, 16 Oct 2025 16:58:23 +1100 Subject: [PATCH 1/2] Untracked: Remove code added by mistake --- R/mergingandstackingutilities.R | 3 --- 1 file changed, 3 deletions(-) diff --git a/R/mergingandstackingutilities.R b/R/mergingandstackingutilities.R index 7523230..115068e 100644 --- a/R/mergingandstackingutilities.R +++ b/R/mergingandstackingutilities.R @@ -360,9 +360,6 @@ splitByComma <- function(input.text, ignore.commas.in.parentheses = FALSE) result <- result[result != ""] result } - result <- trimws(result) - result <- result[result != ""] - result } #' @param x A vector. From 068d6dcc6b6f111fe11a481c68db416a244770a8 Mon Sep 17 00:00:00 2001 From: jrwishart Date: Fri, 17 Oct 2025 09:37:31 +1100 Subject: [PATCH 2/2] Reduce nesting --- R/mergingandstackingutilities.R | 55 ++++++++++++++++----------------- 1 file changed, 26 insertions(+), 29 deletions(-) diff --git a/R/mergingandstackingutilities.R b/R/mergingandstackingutilities.R index 115068e..35ffcf6 100644 --- a/R/mergingandstackingutilities.R +++ b/R/mergingandstackingutilities.R @@ -326,40 +326,37 @@ splitByComma <- function(input.text, ignore.commas.in.parentheses = FALSE) split.text <- trimws(strsplit(input.text, ",")[[1]]) return(split.text[split.text != ""]) } - else + split.char <- strsplit(input.text, "")[[1]] + result <- c() + start.ind <- NA_integer_ + in.parentheses <- FALSE + for (i in seq_along(split.char)) { - split.char <- strsplit(input.text, "")[[1]] - result <- c() - start.ind <- NA_integer_ - in.parentheses <- FALSE - for (i in seq_along(split.char)) + if (is.na(start.ind)) { - if (is.na(start.ind)) - { - if (split.char[i] != ",") - start.ind <- i - else - next - } + if (split.char[i] != ",") + start.ind <- i + else + next + } - if (!in.parentheses && split.char[i] == ",") - { - result <- c(result, paste0(split.char[start.ind:(i - 1)], - collapse = "")) - start.ind <- NA_integer_ - } - else if (i == length(split.char)) - result <- c(result, paste0(split.char[start.ind:i], - collapse = "")) - else if (!in.parentheses && split.char[i] == "(") - in.parentheses <- TRUE - else if (in.parentheses && split.char[i] == ")") - in.parentheses <- FALSE + if (!in.parentheses && split.char[i] == ",") + { + result <- c(result, paste0(split.char[start.ind:(i - 1)], + collapse = "")) + start.ind <- NA_integer_ } - result <- trimws(result) - result <- result[result != ""] - result + else if (i == length(split.char)) + result <- c(result, paste0(split.char[start.ind:i], + collapse = "")) + else if (!in.parentheses && split.char[i] == "(") + in.parentheses <- TRUE + else if (in.parentheses && split.char[i] == ")") + in.parentheses <- FALSE } + result <- trimws(result) + result <- result[result != ""] + result } #' @param x A vector.