Marc56us wrote:I don't understand why you're reversing the character string ? it won't go any faster.
It is useful to understand how a regular expression analysis engine works (it's quite simple in fact)
Look at Jan Goyvaerts' reference help
https://www.regular-expressions.info/engine.html
Please, post some lines:
1. Example of a string that match
2. Example of a string that should not match.

Hello!
While decoding suffixes and prefixes, the rules are scanned from right to left on suffixes and left to right on prefixes:
primary word="play"
applying the flag "D" suffix to it it scans the affix (.aff) file and it scans every D rule and this one matches:
SFX D 0 ed [aeiou]y
the word is "play" and the pattern "[aeiou]y"
the pattern matches in the primary word "play".
1) first letter from right "y"
2) second letter from right is one of "aeiou"
So, it adds a suffix "ed" to "play", producing "played".
With prefixes the rules are scanned in the primary words from left to right:
For example, with the same primary word "play" if I would apply the flag prefix "A":
PFX A 0 re [^e]
1) first letter from left in "play" is different from "e"
So, it adds a prefix "re" to "play" producing "replay".
Rules can have several [blah blah]letters[^blah blah]letters
I was doing it with my own code but then I found out the PB supports regexp, so I replaced my complex code with it.
But only then I noticed that there was also the possibility of using dots in rules which means my old complex code didn't produce 100% accurate results.
Then, I don't know how to scan primary words from left to right or from right to left using the regexp commands in PB, all I know is that I add an $ to the regexp command and it seems to work with suffixes but misworks with prefixes?
Is this explanation descriptive?
Thank you, Marcus and guys.