diff --git a/check/test.go b/check/test.go
index d27750aec42673f553f2593314cd260fdcc5f84f..b15cb8b41e69bc33b23508a0a830db5be64417dd 100644
--- a/check/test.go
+++ b/check/test.go
@@ -185,6 +185,11 @@ func (t *testItem) execute(s string) *testOutput {
 			case "nothave":
 				expectedResultPattern = " '%s' not have '%s'"
 				result.testResult = !strings.Contains(flagVal, t.Compare.Value)
+
+			case "regex":
+				expectedResultPattern = " '%s' matched by '%s'"
+				opRe := regexp.MustCompile(t.Compare.Value)
+				result.testResult = opRe.MatchString(flagVal)
 			}
 
 			result.ExpectedResult = fmt.Sprintf(expectedResultPattern, t.Flag, t.Compare.Value)