Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
regex vs split and trim
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36 Edg/127.0.0.0
Browser:
Chrome 127
Operating system:
Windows
Device Platform:
Desktop
Date tested:
one year ago
Test name
Executions per second
Short regex
190377.1 Ops/sec
Long regex
190873.9 Ops/sec
Short split and trim
190838.0 Ops/sec
Long split and trim
189239.7 Ops/sec
Script Preparation code:
function generateText(length, containsOtherChars) { return [].constructor(length) .map(it => Math.random() > 0.5 ? ',' : containsOtherChars && Math.random() > 0.5 ? 'a' : ' ') .join(""); } var shortEmptyText = generateText(100, false); var shortNonEmptyText = generateText(100, true); var longEmptyText = generateText(1000 * 1000 * 10, false); var longNonEmptyText = generateText(1000 * 1000 * 10, true); var regex = /^[\s,]*$/;
Tests:
Short regex
console.log(!!shortEmptyText.match(regex)?.length); console.log(!!shortNonEmptyText.match(regex)?.length);
Long regex
console.log(!!longEmptyText.match(regex)?.length); console.log(!!longNonEmptyText.match(regex)?.length);
Short split and trim
var sanitizedEmptyText = shortEmptyText.split(",").filter(it => !!it?.trim()).join(""); var sanitizedNonEmptyText = shortEmptyText.split(",").filter(it => !!it?.trim()).join(""); console.log(sanitizedEmptyText.length > 0); console.log(sanitizedNonEmptyText.length > 0);
Long split and trim
var sanitizedEmptyText = longEmptyText.split(",").filter(it => !!it?.trim()).join(""); var sanitizedNonEmptyText = longNonEmptyText.split(",").filter(it => !!it?.trim()).join(""); console.log(sanitizedEmptyText.length > 0); console.log(sanitizedNonEmptyText.length > 0);