diff --git a/src/trace_processor/perfetto_sql/intrinsics/functions/utils.h b/src/trace_processor/perfetto_sql/intrinsics/functions/utils.h
index e5c28bd..44dc420 100644
--- a/src/trace_processor/perfetto_sql/intrinsics/functions/utils.h
+++ b/src/trace_processor/perfetto_sql/intrinsics/functions/utils.h
@@ -398,8 +398,8 @@
   }
 };
 
-struct RegexpReplace : public sqlite::Function<RegexpReplace> {
-  static constexpr char kName[] = "regexp_replace";
+struct RegexpReplaceSimple : public sqlite::Function<RegexpReplaceSimple> {
+  static constexpr char kName[] = "regexp_replace_simple";
   static constexpr int kArgCount = 3;
 
   using AuxData = regex::Regex;
diff --git a/src/trace_processor/trace_processor_impl.cc b/src/trace_processor/trace_processor_impl.cc
index 2b99fa5..f1a2a25 100644
--- a/src/trace_processor/trace_processor_impl.cc
+++ b/src/trace_processor/trace_processor_impl.cc
@@ -1252,7 +1252,7 @@
   if constexpr (regex::IsRegexSupported()) {
     RegisterFunction<Regexp>(engine.get());
     RegisterFunction<RegexpExtract>(engine.get());
-    RegisterFunction<RegexpReplace>(engine.get());
+    RegisterFunction<RegexpReplaceSimple>(engine.get());
   }
 
   RegisterFunction<UnHex>(engine.get());
diff --git a/test/trace_processor/diff_tests/include_index.py b/test/trace_processor/diff_tests/include_index.py
index 2fb95a6..b3b74cc 100644
--- a/test/trace_processor/diff_tests/include_index.py
+++ b/test/trace_processor/diff_tests/include_index.py
@@ -156,7 +156,7 @@
 from diff_tests.stdlib.prelude.package_lookup_tests import PackageLookup
 from diff_tests.stdlib.prelude.pprof_functions_tests import PreludePprofFunctions
 from diff_tests.stdlib.prelude.regexp_extract import RegexpExtract
-from diff_tests.stdlib.prelude.regexp_replace import RegexpReplace
+from diff_tests.stdlib.prelude.regexp_replace_simple import RegexpReplaceSimple
 from diff_tests.stdlib.prelude.slices_tests import PreludeSlices
 from diff_tests.stdlib.prelude.window_functions_tests import PreludeWindowFunctions
 from diff_tests.stdlib.sched.tests import StdlibSched
@@ -328,7 +328,7 @@
       PreludePprofFunctions,
       PreludeWindowFunctions,
       RegexpExtract,
-      RegexpReplace,
+      RegexpReplaceSimple,
       Pkvm,
       PreludeSlices,
       StdlibSmoke,
diff --git a/test/trace_processor/diff_tests/stdlib/prelude/regexp_replace.py b/test/trace_processor/diff_tests/stdlib/prelude/regexp_replace_simple.py
similarity index 80%
rename from test/trace_processor/diff_tests/stdlib/prelude/regexp_replace.py
rename to test/trace_processor/diff_tests/stdlib/prelude/regexp_replace_simple.py
index c1a94f8..3332499 100644
--- a/test/trace_processor/diff_tests/stdlib/prelude/regexp_replace.py
+++ b/test/trace_processor/diff_tests/stdlib/prelude/regexp_replace_simple.py
@@ -20,16 +20,16 @@
 from python.generators.diff_tests.testing import TestSuite
 
 
-class RegexpReplace(TestSuite):
+class RegexpReplaceSimple(TestSuite):
 
-  def test_regexp_replace(self):
+  def test_regexp_replace_simple(self):
     return DiffTestBlueprint(
         trace=TextProto(''),
         query="""
         SELECT
-          REGEXP_REPLACE('abcde', 'c', 'C') AS c,
-          REGEXP_REPLACE('abcde', 'i', 'I') AS i,
-          REGEXP_REPLACE('abcde', '', '|') AS interpolate
+          REGEXP_REPLACE_SIMPLE('abcde', 'c', 'C') AS c,
+          REGEXP_REPLACE_SIMPLE('abcde', 'i', 'I') AS i,
+          REGEXP_REPLACE_SIMPLE('abcde', '', '|') AS interpolate
         """,
         out=Csv("""
         "c","i","interpolate"
