diff --git a/tests/stdio_test.cpp b/tests/stdio_test.cpp
index e38dd60..cf8cb0a 100644
--- a/tests/stdio_test.cpp
+++ b/tests/stdio_test.cpp
@@ -2461,7 +2461,7 @@
   ASSERT_STREQ("<Unknown error -1>", buf);
   errno = EINVAL;
   snprintf(buf, sizeof(buf), "<%m>");
-  ASSERT_STREQ("<Invalid argument>", buf);
+  ASSERT_MATCH(buf, "<Invalid argument.*>");
 }
 
 TEST(STDIO_TEST, printf_m_does_not_clobber_strerror) {
@@ -2484,7 +2484,7 @@
   ASSERT_EQ(std::wstring(L"<Unknown error -1>"), buf);
   errno = EINVAL;
   swprintf(buf, sizeof(buf), L"<%m>");
-  ASSERT_EQ(std::wstring(L"<Invalid argument>"), buf);
+  ASSERT_MATCH(buf, L"Invalid argument.*>");
 }
 
 TEST(STDIO_TEST, wprintf_m_does_not_clobber_strerror) {
@@ -2558,9 +2558,9 @@
 
 TEST(STDIO_TEST, perror) {
   ExecTestHelper eth;
-  eth.Run([&]() { errno = EINVAL; perror("a b c"); exit(0); }, 0, "a b c: Invalid argument\n");
-  eth.Run([&]() { errno = EINVAL; perror(nullptr); exit(0); }, 0, "Invalid argument\n");
-  eth.Run([&]() { errno = EINVAL; perror(""); exit(0); }, 0, "Invalid argument\n");
+  eth.Run([&]() { errno = EINVAL; perror("a b c"); exit(0); }, 0, "a b c: Invalid argument.*\n");
+  eth.Run([&]() { errno = EINVAL; perror(nullptr); exit(0); }, 0, "Invalid argument.*\n");
+  eth.Run([&]() { errno = EINVAL; perror(""); exit(0); }, 0, "Invalid argument.*\n");
 }
 
 TEST(STDIO_TEST, puts) {
diff --git a/tests/string_posix_strerror_r_test.cpp b/tests/string_posix_strerror_r_test.cpp
index e4becaa..808f963 100644
--- a/tests/string_posix_strerror_r_test.cpp
+++ b/tests/string_posix_strerror_r_test.cpp
@@ -15,6 +15,8 @@
  */
 
 #include <errno.h>
+
+#include <android-base/test_utils.h>
 #include <gtest/gtest.h>
 
 // Defined in string_posix_strerror_r_wrapper.cpp as a wrapper around the posix
@@ -33,7 +35,7 @@
   ASSERT_STREQ("Success", buf);
 #endif
   ASSERT_EQ(0, posix_strerror_r(1, buf, sizeof(buf)));
-  ASSERT_STREQ("Operation not permitted", buf);
+  ASSERT_MATCH(buf, "Operation not permitted.*");
 
 #if defined(__BIONIC__) || defined(ANDROID_HOST_MUSL)
   // Invalid.
diff --git a/tests/string_test.cpp b/tests/string_test.cpp
index 8d3fb68..1b0082f 100644
--- a/tests/string_test.cpp
+++ b/tests/string_test.cpp
@@ -28,6 +28,8 @@
 #include <algorithm>
 #include <vector>
 
+#include <android-base/test_utils.h>
+
 #include "buffer_tests.h"
 
 #if defined(NOFORTIFY)
@@ -58,7 +60,7 @@
 TEST(STRING_TEST, strerror) {
   // Valid.
   ASSERT_STREQ("Success", strerror(0));
-  ASSERT_STREQ("Operation not permitted", strerror(1));
+  ASSERT_MATCH(strerror(1), "Operation not permitted.*");
 
   // Invalid.
   ASSERT_STREQ("Unknown error -1", strerror(-1));
@@ -106,9 +108,9 @@
 #if defined(__BIONIC__)
   ASSERT_STREQ("Success", buf);
 #endif
-  ASSERT_STREQ("Operation not permitted", strerror_r(1, buf, sizeof(buf)));
+  ASSERT_MATCH(strerror_r(1, buf, sizeof(buf)), "Operation not permitted.*");
 #if defined(__BIONIC__)
-  ASSERT_STREQ("Operation not permitted", buf);
+  ASSERT_MATCH(buf, "Operation not permitted.*");
 #endif
 
   // Invalid.
diff --git a/tests/utils.h b/tests/utils.h
index 284140a..90fb1d0 100644
--- a/tests/utils.h
+++ b/tests/utils.h
@@ -44,6 +44,7 @@
 #include <android-base/macros.h>
 #include <android-base/scopeguard.h>
 #include <android-base/stringprintf.h>
+#include <android-base/test_utils.h>
 
 #if defined(__LP64__)
 #define PATH_TO_SYSTEM_LIB "/system/lib64/"
@@ -259,9 +260,7 @@
     std::string error_msg("Test output:\n" + output_);
     AssertChildExited(pid, expected_exit_status, &error_msg);
     if (expected_output_regex != nullptr) {
-      if (!std::regex_search(output_, std::regex(expected_output_regex))) {
-        FAIL() << "regex " << expected_output_regex << " didn't match " << output_;
-      }
+      ASSERT_MATCH(output_, expected_output_regex);
     }
   }
 
