Correctly fixed regexp quoting issue for bash v3.1.x and v3.2.x.

See: http://stackoverflow.com/questions/218156/bash-regex-with-quotes
This commit is contained in:
Jared Cordasco
2010-01-06 21:05:22 -05:00
parent 4c76f04a82
commit 394c4c748a

View File

@@ -259,8 +259,13 @@ cleaninput()
# Replace newlines with spaces Always
input=`echo $input | tr -d '\r|\n'`
# Storing regexp in variable fixes quoting difference between
# bash v3.1.x and v3.2.x see:
# http://stackoverflow.com/questions/218156/bash-regex-with-quotes
action_regexp='^(append|app|prepend|prep|replace)$'
# Check which action we are being used in as this affects what cleaning we do
if [[ $action =~ '^(append|app|prepend|prep|replace)$' ]]; then
if [[ $action =~ $action_regexp ]]; then
# These actions use sed and & as the matched string so escape it
input=`echo $input | sed 's/\&/\\\&/g'`
fi