R 闪亮的 grep javascript
R Shiny grep javascript
我希望能够在 conditionalPanel
函数中使用 grepl
。
这是一个MWE。在这一个中,我测试我的输入是明确的可能性之一。
library(shiny)
ui <- fluidPage(
column(5, wellPanel(
uiOutput("test")
)
),
column(7,
conditionalPanel("input.essai_res == 'first choice.xlsx'",
p("test")
)
)
)
server <- function(input, output) {
output$test <- renderUI({
selectInput("essai_res", h3("Test"), c("first choice.xlsx", "second choice.xlsx"))
})
}
shinyApp(ui = ui, server = server)
取而代之,我希望能够测试字符串 "first" 是否是选择的一部分。
我试过了
conditionalPanel("grepl('first', input.essai_res)", p("test"))
conditionalPanel("'first'.test(input.essai_res)", p("test"))
我做的第二个是为了尝试 JavaScript 命令。
在这两种情况下,无论列表中的选择是什么,"test" 总是出现。
我该怎么做才能让 "test" 仅在 "first" 是选项的一部分时出现?
我添加此评论是为了回答下面有关上下文的问题。选择来自这些命令行:
files_list <- list.files(path = "Data/", pattern = "\.xlsx$|\.xlsm$", full.names = TRUE)
files_names <- substring(files_list, 6)
files_list <- as.list(files_list)
names(files_list) <- files_names
if (length(files_list) == 0){files_list <- "No files in the folder \"Data\""}
output$path_res <- renderUI({
selectInput("essai_a", h3("Title"), files_list)
})
您可以使用 includes
但请注意它在 IE 中不起作用:
library(shiny)
ui <- fluidPage(
column(
width = 5, wellPanel(
selectInput("essai_res", h3("Test"), c("first choice.xlsx", "second choice.xlsx"))
)
),
column(
width = 7,
conditionalPanel(
"input.essai_res.includes('first')",
p("test")
)
)
)
server <- function(input, output) {
}
shinyApp(ui = ui, server = server)
使用正则表达式:"(/first/).test(input.essai_res)
".
我希望能够在 conditionalPanel
函数中使用 grepl
。
这是一个MWE。在这一个中,我测试我的输入是明确的可能性之一。
library(shiny)
ui <- fluidPage(
column(5, wellPanel(
uiOutput("test")
)
),
column(7,
conditionalPanel("input.essai_res == 'first choice.xlsx'",
p("test")
)
)
)
server <- function(input, output) {
output$test <- renderUI({
selectInput("essai_res", h3("Test"), c("first choice.xlsx", "second choice.xlsx"))
})
}
shinyApp(ui = ui, server = server)
取而代之,我希望能够测试字符串 "first" 是否是选择的一部分。
我试过了
conditionalPanel("grepl('first', input.essai_res)", p("test"))
conditionalPanel("'first'.test(input.essai_res)", p("test"))
我做的第二个是为了尝试 JavaScript 命令。
在这两种情况下,无论列表中的选择是什么,"test" 总是出现。
我该怎么做才能让 "test" 仅在 "first" 是选项的一部分时出现?
我添加此评论是为了回答下面有关上下文的问题。选择来自这些命令行:
files_list <- list.files(path = "Data/", pattern = "\.xlsx$|\.xlsm$", full.names = TRUE)
files_names <- substring(files_list, 6)
files_list <- as.list(files_list)
names(files_list) <- files_names
if (length(files_list) == 0){files_list <- "No files in the folder \"Data\""}
output$path_res <- renderUI({
selectInput("essai_a", h3("Title"), files_list)
})
您可以使用 includes
但请注意它在 IE 中不起作用:
library(shiny)
ui <- fluidPage(
column(
width = 5, wellPanel(
selectInput("essai_res", h3("Test"), c("first choice.xlsx", "second choice.xlsx"))
)
),
column(
width = 7,
conditionalPanel(
"input.essai_res.includes('first')",
p("test")
)
)
)
server <- function(input, output) {
}
shinyApp(ui = ui, server = server)
使用正则表达式:"(/first/).test(input.essai_res)
".