diff --git a/src/Plugin/Condition/BaseCondition.php b/src/Plugin/Condition/BaseCondition.php
index aa23614..7ab0b50 100644
--- a/src/Plugin/Condition/BaseCondition.php
+++ b/src/Plugin/Condition/BaseCondition.php
@@ -30,6 +30,8 @@ abstract class BaseCondition extends ConditionPluginBase implements ContainerFac
   const OP_SET = 'set';
   const OP_NOT_SET = 'not_set';
   const OP_REGEX = 'regex';
+  const OP_CONTAINS = 'contains';
+  const OP_NOT_CONTAINS = 'not_contains';
 
   /**
    * @var RequestStack
@@ -224,6 +226,8 @@ abstract class BaseCondition extends ConditionPluginBase implements ContainerFac
         self::OP_EMPTY => $this->t('must be set and have no value'),
         self::OP_NOT_SET => $this->t('must not be set'),
         self::OP_REGEX => $this->t('matches regular expression'),
+        self::OP_CONTAINS => $this->t('must contain'),
+        self::OP_NOT_CONTAINS => $this->t('must not contain'),
       ],
       '#attributes' => [
         'id' => $html_id,
@@ -462,6 +466,42 @@ abstract class BaseCondition extends ConditionPluginBase implements ContainerFac
         return !isset($context[$condition['name']]);
         break;
 
+      // Parameter must contain.
+      case self::OP_CONTAINS:
+        $check = isset($context[$condition['name']]) ?
+          $context[$condition['name']] :
+          NULL;
+        if (is_array($check)) {
+          foreach ($check as $check_item) {
+            if (strstr($check_item, $condition['value'])) {
+              return TRUE;
+            }
+          }
+          return FALSE;
+        }
+        else {
+          return isset($context[$condition['name']]) && strstr($check, $condition['value']);
+        }
+        break;
+
+      // Parameter must not contain.
+      case self::OP_NOT_CONTAINS:
+        $check = isset($context[$condition['name']]) ?
+          $context[$condition['name']] :
+          NULL;
+        if (is_array($check)) {
+          foreach ($check as $check_item) {
+            if (strstr($check_item, $condition['value'])) {
+              return FALSE;
+            }
+          }
+          return TRUE;
+        }
+        else {
+          return isset($context[$condition['name']]) && !strstr($check, $condition['value']);
+        }
+        break;
+
       // Regular expression match.
       case self::OP_REGEX:
         $pattern = '/' . preg_quote($condition['value']) . '/';
