Example Test case from another post:
Whereas this works:SavedAs: Rx: N-\d{6} BUG
Search : ([a-zA-Z]+)-?((\d{6})0|(\d{5})(0)|(\d{4})(0)|(\d{3})(0)|(\d{2})(0)|(\d{1})(0)|(0)|(\d{7,})0)\.
Replace: $1-$3$5$4$7$7$6$9$9$9$8$11$11$11$11$10$13$13$13$13$13$12$14$14$14$14$14$14$15.
Example #2: ErrorSavedAs: Rx: N-\d{6} !safe
Search : ([a-zA-Z]+)-?((\d{6})0|(\d{5})(0)|(\d{4})(0)|(\d{3})(0)|(\d{2})(0)|(\d{1})(0)|(0))\.
Replace: $1-$3$5$4$7$7$6$9$9$9$8$11$11$11$11$10$13$13$13$13$13$12$14$14$14$14$14$14.
Example #3: WorksSearch: ()()()()()()()()()()()()()()()
Search: ()()()()()()()()()()()()()()
As a side note: Total Commander's implementation of Regex also doesn't support most of the "question-mark" syntax that other regex engines do, eg:
* Atomic Grouping and Possessive Quantifiers
* Lookaround
* Conditionals
From regular-expression.info: http://www.regular-expressions.info/refadv.html
An example of one particular "?" syntax that I find useful in other tools:
given the following files, foobar.txt, barfoo.txt, twofoo.txt
Search: (?|foo(bar)|bar(foo)|two(foo))
Replace: $1
Will match bar, foo and foo of the three files. Since TC doesn't support that syntax we have to do:
Search: (foo(bar)|bar(foo)|two(foo))
Replace: $2$3$4