Age | Commit message (Collapse) | Author | Files | Lines |
|
If it does not contain a number, treat it as an exact match.
Fixes #323
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
The previous approach could end up with a zero length "EXACTLY"
match that would recurse infinitely until stack overflow.
Fixes #313
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Fixes #311
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Fixes #259
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Fixes #259
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
The end of word check was wrong and return true when it should not.
Fixes #246
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Avoid possible problems with when linking by renaming
local regex to jim_regcomp, jim_regexec, etc.
Fixes: #163
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Detect and produce an error for missing closing bracket ]
Consider a trailing backslash as an invalid escape
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Internally bytes were being counted rather than characters
Reported-by: dbohdan <dbohdan@dbohdan.com>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
The following class shorthand escapes now match Tcl when
used within bracket expressions:
\d [[:digit:]]
\s [[:space:]]
\w [[:alnum:]_] (note underscore)
e.g. [a-f\d] => [a-f0-9]
Previously these shorthand escapes were only implemented outside bracket expressions.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
For counted repetitions
Reported-by: Ryan Whitworth <me@ryanwhitworth.com>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Mostly from -Wshadow
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
[[::blank:]], [[::xdigit::]], etc.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Still not 100% correct, for example when used with regsub -all
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
These are the negated versions of \d, \w and \s
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Courtesy of coverity
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Courtesy of coverity
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Sweep through and clean up all (most) of the comments in the code.
While there, adjust some variable and function names to be more consistent,
and make a few small code changes - again, mostly for consistency.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Reported-by: Andy <jimdevel@hummypkg.org.uk>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
The Intel C Compiler
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
regsub {\mdnl\M.*$} "word \xA9 another word" "" line
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
TIP #388 compatibility
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Now codepoints up to U+1FFFFF are supported, including
as literals with the new \u{NNNNNN} syntax (up to six hex digits)
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
If a cached regex containing counts was reused, the result
may have been incorrect.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
e.g. {[a-z-]}
For Tcl ARE compatibility
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Tcl-compatible syntax: (?:...)
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
By removing comments and some large blocks of unnecessary code
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Some unused variables
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Simply guess the program size and realloc if needed.
This also fixes a compile warning on some platforms.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Reported-By: Spencer Oliver <spen@spen-soft.co.uk>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Nested repeats can't really be handled properly, so remove
support since it breaks some non-nested cases.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Simplifies *, + and {n,m}, fixes some
broken cases and adds support for {n,m}?
Also fixes end-of-word match
Under some circumstances, repeats can now be nested.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Also searching the initial part of the string
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Support +?, *? and ??
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Allows a single source file version of jimsh to be created
for bootstrap purposes.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Remove a "feature" in the built-in regexp, where
a newline in the pattern was treated as alternation, like |.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Even if disabled, the built-in regexp was still being used.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
The form {n} should be considered the same as {n,n}
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
An anchored search could use the wrong string
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Also create README.utf-8
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Plus various ARE enhancements and bug fixes
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
With some ARE extensions
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|