diff --git a/src/string_utils.h b/src/string_utils.h
index f49313f7c6c923786692c6863661e47c3e0db702..b2b10c4b7bafee3cc62e85565eec37b3f675ed7f 100644
--- a/src/string_utils.h
+++ b/src/string_utils.h
@@ -56,7 +56,7 @@ operator+(const string_view& sv, const string& s)
 using svmatch = match_results<string_view::const_iterator>;
 using svsub_match = sub_match<string_view::const_iterator>;
 constexpr string_view svsub_match_view(const svsub_match& submatch) noexcept {
-    return string_view(submatch.first, submatch.second - submatch.first);
+    return string_view(&*submatch.first, submatch.second - submatch.first);
 }
 inline bool
 regex_match(string_view sv,