The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Title: Brace Expansions
Version: 1.2.2
Description: Performs brace expansions on strings. Made popular by Unix shells, brace expansion allows users to concisely generate certain character vectors by taking a single string and (recursively) expanding the comma-separated lists and double-period-separated integer and character sequences enclosed within braces in that string. The double-period-separated numeric integer expansion also supports padding the resulting numbers with zeros.
URL: https://trevorldavis.com/R/bracer/, https://github.com/trevorld/bracer
BugReports: https://github.com/trevorld/bracer/issues
Imports: stringr
License: MIT + file LICENSE
Encoding: UTF-8
Suggests: knitr, rmarkdown, testthat, V8
VignetteBuilder: knitr, rmarkdown
RoxygenNote: 7.1.1
NeedsCompilation: no
Packaged: 2023-03-15 18:09:36 UTC; trevor
Author: Trevor L Davis ORCID iD [aut, cre], Jon Schlinkert [aut] (Author of the 'braces' Javascript library)
Maintainer: Trevor L Davis <trevor.l.davis@gmail.com>
Repository: CRAN
Date/Publication: 2023-03-15 23:20:02 UTC

Bash-style brace expansion

Description

expand_braces performs brace expansions on strings, str_expand_braces is an alternate function that returns a list of character vectors. Made popular by Unix shells, brace expansion allows users to concisely generate certain character vectors by taking a single string and (recursively) expanding the comma-separated lists and double-period-separated integer and character sequences enclosed within braces in that string. The double-period-separated numeric integer expansion also supports padding the resulting numbers with zeros.

Usage

expand_braces(string, engine = getOption("bracer.engine", NULL))

str_expand_braces(string, engine = getOption("bracer.engine", NULL))

Arguments

string

input character vector

engine

If 'r' use a pure R parser. If 'v8' use the 'braces' Javascript parser via the suggested V8 package. If NULL use 'v8' if 'V8' package detected else use 'r'; in either case send a message() about the choice unless ⁠getOption(bracer.engine.inform')⁠ is FALSE.

Value

expand_braces returns a character vector while str_expand_braces returns a list of character vectors.

Examples

  expand_braces("Foo{A..F}", engine = "r")
  expand_braces("Foo{01..10}", engine = "r")
  expand_braces("Foo{A..E..2}{1..5..2}", engine = "r")
  expand_braces("Foo{-01..1}", engine = "r")
  expand_braces("Foo{{d..d},{bar,biz}}.{py,bash}", engine = "r")
  expand_braces(c("Foo{A..F}", "Bar.{py,bash}", "{{Biz}}"), engine = "r")
  str_expand_braces(c("Foo{A..F}", "Bar.{py,bash}", "{{Biz}}"), engine = "r")

Brace and Wildcard expansion on file paths

Description

glob is a wrapper around Sys.glob that uses expand_braces to support both brace and wildcard expansion on file paths.

Usage

glob(paths, ..., engine = getOption("bracer.engine", NULL))

Arguments

paths

character vector of patterns for relative or absolute filepaths.

...

Passed to Sys.glob

engine

If 'r' use a pure R parser. If 'v8' use the 'braces' Javascript parser via the suggested V8 package. If NULL use 'v8' if 'V8' package detected else use 'r'; in either case send a message() about the choice unless ⁠getOption(bracer.engine.inform')⁠ is FALSE.

Examples

  dir <- system.file("R", package="bracer")
  path <- file.path(dir, "*.{R,r,S,s}")
  glob(path, engine = "r")

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.