diff --git a/src/structs/refinements.ts b/src/structs/refinements.ts index f21001ee..6eb13226 100644 --- a/src/structs/refinements.ts +++ b/src/structs/refinements.ts @@ -95,6 +95,9 @@ export function pattern( regexp: RegExp ): Struct { return refine(struct, 'pattern', (value) => { + if (regexp.lastIndex) { + regexp.lastIndex = 0 + } return ( regexp.test(value) || `Expected a ${struct.type} matching \`/${regexp.source}/\` but received "${value}"`