| @@ -110,6 +110,12 @@ regexFn_choices <- list( | |||
| ) | |||
| ) | |||
| available_regex_functions <- function() { | |||
| pkgs <- c("stringr", "rematch2") | |||
| has_pkg <- vapply(pkgs, requireNamespace, quietly = TRUE, logical(1)) | |||
| regexFn_choices[c("base", pkgs[has_pkg])] | |||
| } | |||
| regexFn_substitute <- c( | |||
| paste0(c("", "g"), "sub"), | |||
| paste0("str_replace", c("", "_all")) | |||
| @@ -137,7 +137,7 @@ regexplain_gadget_ui <- function(text = NULL, pattern = NULL, start_page = "Text | |||
| selectInput( | |||
| "regexFn", | |||
| label = "Apply Function", | |||
| choices = regexFn_choices | |||
| choices = available_regex_functions() | |||
| ), | |||
| tags$span( | |||
| class = "help-block", | |||