diff --git a/product/ZSQLCatalog/SearchKey/KeyWordKey.py b/product/ZSQLCatalog/SearchKey/KeyWordKey.py
index 9a12ace6dabfce89c2ebc6ae85209432c84d2a12..ee5e22fcbd0822ad7285cbf70168bb136e7d1944 100644
--- a/product/ZSQLCatalog/SearchKey/KeyWordKey.py
+++ b/product/ZSQLCatalog/SearchKey/KeyWordKey.py
@@ -101,7 +101,7 @@ class KeyWordKey(SearchKey):
     return t
 
   def t_KEYWORD(self, t):
-    r'(%\S*|([^!<>=\s%]\S*|!([^=\s]\S*)?)%)'
+    r'(%\S*|([^!<>=\s%]\S+|!([^=\s]\S+)?)%)'
     # KEYWORD must start and/or end with '%'.
     # It may contain arbitrary letters and numbers without white space
     value = t.value.strip()