:std/pregexp: produces invalid matches #599
Labels
No labels
UX
active development
backlog
blocker
bootstrap
bounty
bug
dependencies
discussion
documentation
duplicate
enhancement
flaky test
help wanted
invalid
javascript
question
release
tendentious
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
mighty-gerbils/gerbil#599
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
:std/pregexp seems to produce wrong matches
compared to racket regexp and pregexp, the same regular expresssion
produces a wrong matches.
example here: the regexp is supposed to match urls and extract submatches.
the "user" match is wrong on gerbil for the first 2 urls
https://gist.github.com/yanndegat/3790c3ac97823fad7242ba589e3e8a17
the regexp definition is a copy/paste from
github.com/racket/racket@46a191df03/racket/collects/net/url-string.rkt (L185)The pregexp syntax is slightly different than racket's regexp syntax.
Can you reduce it to a simple regexp that demonstrates the problem?
hi @vyzo
ok. but is :std/pregexp different from racket's "pregexp" ?
racket's pregexp seems to be the "perl" version of regexps.
when i test this regexp with racket/regexp, racket/pregexp or a port to srfi-115, it seems to work properly
not with :std/pregexp
i'll try to see how i could simplify it by removing at least the last parts of the regexp
It is Dorai Sitaram's pregexp package; see https://ds26gte.github.io/pregexp/index.html