diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries/string/like_01/like_01.3.query.aql b/asterixdb/asterix-app/src/test/resources/runtimets/queries/string/like_01/like_01.3.query.aql
index 2f6ccbd..608d184 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries/string/like_01/like_01.3.query.aql
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries/string/like_01/like_01.3.query.aql
@@ -18,4 +18,4 @@
  */
 use dataverse test;
 
-[like("A6BBB", "_6%"), like("A8BBB", "_6%")]
+[like("A6BBB", "_6%"), like("A8BBB", "_6%"), like("+0300", "+03%"), like("?0300", "?03%")]
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/string/like_01/like_01.3.query.sqlpp b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/string/like_01/like_01.3.query.sqlpp
index fa4a4e0..c0994c1 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/string/like_01/like_01.3.query.sqlpp
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/queries_sqlpp/string/like_01/like_01.3.query.sqlpp
@@ -19,5 +19,9 @@
 
 use test;
 
-
-select element ['A6BBB' LIKE '_6%', 'A8BBB' LIKE '_6%' ];
+select element [
+  'A6BBB' LIKE '_6%',
+  'A8BBB' LIKE '_6%',
+  '+0300' like "+03%",
+  "?0300" like '?03%'
+];
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results/string/like_01/like_01.1.adm b/asterixdb/asterix-app/src/test/resources/runtimets/results/string/like_01/like_01.1.adm
index 984d066..95f3f50 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/results/string/like_01/like_01.1.adm
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results/string/like_01/like_01.1.adm
@@ -1 +1 @@
-[ true, false ]
+[ true, false, true, true ]
diff --git a/asterixdb/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/string/like_01/like_01.3.ast b/asterixdb/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/string/like_01/like_01.3.ast
index ee361dd..ac04a07 100644
--- a/asterixdb/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/string/like_01/like_01.3.ast
+++ b/asterixdb/asterix-app/src/test/resources/runtimets/results_parser_sqlpp/string/like_01/like_01.3.ast
@@ -12,5 +12,15 @@
     like
     LiteralExpr [STRING] [_6%]
   ]
+  OperatorExpr [
+    LiteralExpr [STRING] [+0300]
+    like
+    LiteralExpr [STRING] [+03%]
+  ]
+  OperatorExpr [
+    LiteralExpr [STRING] [?0300]
+    like
+    LiteralExpr [STRING] [?03%]
+  ]
 ]
 ]
diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/StringEvaluatorUtils.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/StringEvaluatorUtils.java
index 7abc721..9c2076da 100644
--- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/StringEvaluatorUtils.java
+++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/StringEvaluatorUtils.java
@@ -57,7 +57,8 @@
         return destString;
     }
 
-    static char[] reservedRegexChars = new char[] { '\\', '(', ')', '[', ']', '{', '}', '.', '^', '$', '*', '|' };
+    static char[] reservedRegexChars =
+            new char[] { '\\', '(', ')', '[', ']', '{', '}', '.', '^', '$', '*', '|', '+', '?' };
 
     static {
         Arrays.sort(reservedRegexChars);
