Huh. Turns out I&#x27;m wrong. I ran benchmarking on a 1.8M row dataset of SF crime data w&#x2F; 100 replications.<p>Running grepl() via:<p><pre><code>   benchmark(df %&gt;% sample_frac() %&gt;% filter(grepl(&quot;ARREST&quot;, Resolution)))
</code></pre>
completed in 257.58 seconds.<p>Running str_detect() via:<p><pre><code>   benchmark(df %&gt;% sample_frac() %&gt;% filter(str_detect(Resolution, &quot;ARREST&quot;)))
</code></pre>
completed in 248.917 seconds.<p>Overall, str_detect() is faster by 3%. The stringr packages has more surprises than I thought!