Actually, your second attempt works for me in bash 3 and 4:
$ echo "$BASH_VERSION" 3.2.51(1)-release $ echo "$foo" "Hello World!" $ [[ "$foo" =~ \".*\" ]] && echo $BASH_REMATCH "Hello World!" $ echo "$BASH_VERSION" 4.3.18(1)-release $ echo "$foo" "Hello World!" $ [[ "$foo" =~ \".*\" ]] && echo "${BASH_REMATCH[0]}" "Hello World!"
However, to talk theory for a second, it all has to do with how bash interprets the expression as a whole. As long as the regular-expression characters themselves aren’t quoted, the rest of the expression can be quoted without side-effects:
$ [[ $foo =~ '"'.*'"' ]] && echo $BASH_REMATCH "Hello World!"
but perhaps the easiest way of all is to use a second variable to hold the regex itself.
$ exp='".*"' $ [[ $foo =~ $exp ]] && echo $BASH_REMATCH "Hello World!"
Related Posts:
- grep –ignore-case –only
- Using the star sign in grep
- RE error: illegal byte sequence on Mac OS X
- Using or ‘|’ in regex [duplicate]
- What is a Context Free Grammar?
- What does \’.- mean in a Regular Expression
- How can I exclude one word with grep?
- How can I validate an email address using a regular expression?
- Regular expression to match a line that doesn’t contain a word
- Difference between \b and \B in regex
- Regex: ignore case sensitivity
- What does the regex \S mean in JavaScript?
- How can I validate an email address using a regular expression?
- How do I use a regex in a shell script?
- Regex: ignore case sensitivity
- Python regex AttributeError: ‘NoneType’ object has no attribute ‘group’
- Regular Expression for alphanumeric and underscores
- What is the difference between the regular expressions [^\d\s] and [\D\S]
- Regular Expression for alphanumeric and underscores
- Regex AND operator
- python re.split() to split by spaces, commas, and periods, but not in cases like 1,000 or 1.50
- python re.split() to split by spaces, commas, and periods, but not in cases like 1,000 or 1.50
- Regex to test if string begins with http:// or https://
- Regular Expression to match string starting with a specific word
- Regular Expressions: Is there an AND operator?
- Regular expression to match standard 10 digit phone number
- What is a non-capturing group in regular expressions?
- Split string on whitespace in Python
- How to validate an email address in PHP
- What is a non-capturing group in regular expressions?
- Regular expression to match standard 10 digit phone number
- How to use Regular Expressions (Regex) in Microsoft Excel both in-cell and loops
- Python string.replace regular expression
- How to use Regular Expressions (Regex) in Microsoft Excel both in-cell and loops
- Symbol for any number of any characters in regex?
- Grep and Python
- Regex – Does not contain certain Characters
- Regex how to match an optional character
- How to validate an email address in JavaScript
- Searching for UUIDs in text with regex
- Regular expression to match a word or its prefix
- How can I remove punctuation from input text in Java?
- Regular expression for exact match of a string
- Regex optional group
- Regex for string contains?
- Question marks in regular expressions
- Difference between \w and \b regular expression meta characters
- Regular Expression – Validate Gmail addresses
- How can I remove punctuation from input text in Java?
- What is the grep equivalent in Python?
- javascript HTML from document.body.innerHTML
- Python re.split() vs split()
- How can I write a regex which matches non greedy?
- Regex Explanation ^.*$ [duplicate]
- Negative matching using grep (match lines that do not contain foo)
- How to exclude a specific string constant?
- Regex match everything after question mark?
- Validating IPv4 addresses with regexp
- How to validate phone number using PHP?
- Can a URL contain a semicolon and still be valid?
- How is \\n and \\\n interpreted by the expanded regular expression?
- Regular Expression to reformat a US phone number in Javascript
- Regex optional capturing group?
- Finding the complement of a DFA?
- RegEx to find two or more consecutive chars
- Regex to match an optional ‘+’ symbol followed by any number of digits
- Regex Match all characters between two strings
- Regular expression to match a word or its prefix
- How to ignore whitespace in a regular expression subject string?
- Regular expression for a string that does not start with a sequence
- Regex: matching up to the first occurrence of a character
- Regex credit card number tests
- python regular expression “\1”
- Regular expression to stop at first match
- /bb|[^b]{2}/ how does it work?
- How do I match any character across multiple lines in a regular expression?
- Regular expression to remove HTML tags from a string
- Regular expression to limit number of characters to 10
- Regex that matches integers in between whitespace or start/end of string only
- What is the difference between square brackets and parentheses in a regex?
- My Vim replace with a regex is throwing a `E488: Trailing characters`
- Regular expression that matches valid IPv6 addresses
- What is the best regular expression to check if a string is a valid URL?
- Regex empty string or email
- Regex to validate date formats dd/mm/YYYY, dd-mm-YYYY, dd.mm.YYYY, dd mmm YYYY, dd-mmm-YYYY, dd/mmm/YYYY, dd.mmm.YYYY with Leap Year Support
- Regex difference: (\w+)? and (\w*)
- Wrap element with in any number of elements with PHP
- extract shortcodes from string
- preg_replace and comment_form_defaults
- 404 regular-expression advice needed
- How to use a variable as a className inside preg_match_all parameters?
- How to set up redirects for category paginated pages after adding /category/ to permalink
- Adding span tags to post titles using regex
- Redirect non www to www using redirection plugin regex
- Remove Custom HTML Posts Using Regex
- Regexes allow only [a-z][A-Z][0-9] and –
- Call Shortcode Attribute Value within another function
- How to fix old embeded iframes with WP-CLI search-replace
- Regex For Extracting First 4 letters of search term
- Use Regex Redirection via htsaccess for RSS Feeds WordPress