@@ -614,11 +614,14 @@ function toRegExpSource(
614614
615615 if ( token . type === "param" ) {
616616 result . push ( {
617- source : hasSegmentCapture // Seen param/wildcard in segment.
618- ? `(${ negate ( delimiter , backtrack ) } +?)`
619- : hasInSegment ( index , "wildcard" ) // See wildcard later in segment.
620- ? `(${ negate ( delimiter , peekText ( index ) ) } +?)`
621- : `(${ negate ( delimiter , "" ) } +?)` ,
617+ source :
618+ hasSegmentCapture & 2 // Seen wildcard in segment.
619+ ? `(${ negate ( delimiter , backtrack ) } +)`
620+ : hasInSegment ( index , "wildcard" ) // See wildcard later in segment.
621+ ? `(${ negate ( delimiter , peekText ( index ) ) } +)`
622+ : hasSegmentCapture & 1 // Seen parameter in segment.
623+ ? `(${ negate ( delimiter , backtrack ) } +|${ escape ( backtrack ) } )`
624+ : `(${ negate ( delimiter , "" ) } +?)` ,
622625 key : token ,
623626 } ) ;
624627
@@ -627,12 +630,10 @@ function toRegExpSource(
627630 result . push ( {
628631 source :
629632 hasSegmentCapture & 2 // Seen wildcard in segment.
630- ? `(${ negate ( backtrack , "" ) } +?)`
631- : hasSegmentCapture & 1 // Seen param in segment.
632- ? `(${ negate ( wildcardBacktrack , "" ) } +?)`
633- : wildcardBacktrack // No capture in segment, seen wildcard in path.
634- ? `(${ negate ( wildcardBacktrack , "" ) } +?|${ negate ( delimiter , "" ) } +?)`
635- : `([^]+?)` ,
633+ ? `(${ negate ( backtrack , "" ) } +)`
634+ : wildcardBacktrack // No capture in segment, seen wildcard in path.
635+ ? `(${ negate ( wildcardBacktrack , "" ) } +|${ negate ( delimiter , "" ) } +)`
636+ : `([^]+?)` ,
636637 key : token ,
637638 } ) ;
638639
0 commit comments