qdapRegex (version 0.7.2)

explain: Visualize Regular Expressions

Description

Visualize regular expressions using http://www.regexper.com & http://rick.measham.id.au/paste/explain.

Usage

explain(pattern, open = FALSE, print = TRUE,
  dictionary = getOption("regex.library"))

Arguments

pattern

A character string containing a regular expression or a character string starting with "@" that is a regular expression from a qdapRegex dictionary.

open

logical. If TRUE the default browser will attempt to open http://www.regexper.com page. Setting open = 2 will utilize an unstable visualization via https://www.debuggex.com. This approach utilizes a non-api scrape that is subject to change and not guaranteed to be stable. The regex is set to Python flavor which handles lookbehinds that the Java based http://www.regexper.com does not. This functionality was developed by Matthew Flickinger (see http://stackoverflow.com/a/27574103/1000343 for details). Note that the user must have httr installed or will be prompted if the package cannot be required.

print

logical. Should explain print output to the console?

dictionary

A dictionary of canned regular expressions to search within.

Value

Prints http://rick.measham.id.au/paste/explain to the console, attempts to open the url to the visual representation provided by http://www.regexper.com, and invisibly returns a list with the URLs.

Details

Note that http://www.regexper.com is a Java based regular expression viewer. Lookbehind and negative lookbehinds are not respected.

References

http://stackoverflow.com/a/27489977/1000343 http://www.regexper.com http://rick.measham.id.au/paste/explain http://stackoverflow.com/a/27574103/1000343

See Also

http://www.regexper.com http://rick.measham.id.au/paste/explain

Examples

Run this code
# NOT RUN {
explain("\\s*foo[A-Z]\\d{2,3}")
explain("@rm_time")
# }
# NOT RUN {
explain("\\s*foo[A-Z]\\d{2,3}", open = TRUE)
explain("@rm_time", open = TRUE)
# }

Run the code above in your browser using DataLab