Added more complicated regex test patterns
diff --git a/test/re_test.cc b/test/re_test.cc
index c5ff9aa..3bfac83 100644
--- a/test/re_test.cc
+++ b/test/re_test.cc
@@ -22,9 +22,49 @@
     EXPECT_FALSE(re.Match(""));
     EXPECT_TRUE(re.Match("a"));
     EXPECT_TRUE(re.Match("aa"));
+    EXPECT_TRUE(re.Match("baa"));
     EXPECT_FALSE(re.Match("b"));
 }
 
+TEST(Regex, RegexWildcard) {
+    benchmark::Regex re;
+    EXPECT_TRUE(re.Init("^a*$", NULL));
+
+    EXPECT_TRUE(re.Match(""));
+    EXPECT_TRUE(re.Match("a"));
+    EXPECT_TRUE(re.Match("aa"));
+    EXPECT_FALSE(re.Match("baa"));
+    EXPECT_FALSE(re.Match("b"));
+}
+
+TEST(Regex, RegexAny) {
+    benchmark::Regex re;
+    EXPECT_TRUE(re.Init(".", NULL));
+
+    EXPECT_FALSE(re.Match(""));
+    EXPECT_TRUE(re.Match("a"));
+    EXPECT_TRUE(re.Match("aa"));
+}
+
+TEST(Regex, RegexExact) {
+    benchmark::Regex re;
+    EXPECT_TRUE(re.Init("^.$", NULL));
+
+    EXPECT_FALSE(re.Match(""));
+    EXPECT_TRUE(re.Match("a"));
+    EXPECT_FALSE(re.Match("aa"));
+}
+
+TEST(Regex, RegexComplicated) {
+    benchmark::Regex re;
+    EXPECT_TRUE(re.Init("([0-9]+ )?(mon|low)key(s)?", NULL));
+
+    EXPECT_TRUE(re.Match("something monkey hands"));
+    EXPECT_TRUE(re.Match("1 lowkey"));
+    EXPECT_TRUE(re.Match("19 monkeys"));
+    EXPECT_FALSE(re.Match("09 a"));
+}
+
 TEST(Regex, InvalidNoErrorMessage) {
     benchmark::Regex re;
     EXPECT_FALSE(re.Init("[", NULL));