Remove escaping of \ ( ) characters (#20915)

This commit is contained in:
Erik Sundell
2019-12-06 09:59:33 +01:00
committed by GitHub
parent 2a44cbd137
commit a533e00622
2 changed files with 4 additions and 24 deletions
@@ -78,7 +78,7 @@ func buildSearchExpression(query *cloudWatchQuery, stat string) string {
}
sort.Strings(keys)
for _, key := range keys {
values := escape(knownDimensions[key])
values := escapeDoubleQuotes(knownDimensions[key])
valueExpression := join(values, " OR ", `"`, `"`)
if len(knownDimensions[key]) > 1 {
valueExpression = fmt.Sprintf(`(%s)`, valueExpression)
@@ -102,12 +102,9 @@ func buildSearchExpression(query *cloudWatchQuery, stat string) string {
return fmt.Sprintf(`REMOVE_EMPTY(SEARCH('Namespace="%s" %s', '%s', %s))`, query.Namespace, searchTerm, stat, strconv.Itoa(query.Period))
}
func escape(arr []string) []string {
func escapeDoubleQuotes(arr []string) []string {
result := []string{}
for _, value := range arr {
value = strings.ReplaceAll(value, `\`, `\\`)
value = strings.ReplaceAll(value, ")", `\)`)
value = strings.ReplaceAll(value, "(", `\(`)
value = strings.ReplaceAll(value, `"`, `\"`)
result = append(result, value)
}