Regex match a string with spaces (use quotes?) in an if statement

bash, debian, linux, regex, string

Solution

You can use `\` before spaces.

#!/bin/bash

text="This is just a test string"
if [[ "$text" =~ ^This\ is\ just ]]; then
  echo "matched"
else
  echo "not matched"
fi

Problem

How would I do a regex match as shown below but with quotes around the ("^This") as in the real world "This" will be a string that can have spaces in it. ``` #!/bin/bash text="This is just a test string" if [[ "$text" =~ ^This ]]; then echo "matched" else echo "not matched" fi ``` I want to do something like ``` if [[ "$text" =~ "^This is" ]]; then ``` but this doesn't match.

Original source