Softanza
StartFrançais
Softanza
The library documents itself · Pattern matching

stzRegexMaker

68 own methods · 12 forms written with extensions, listed under their method

the source: base/regex/stzRegexMaker.ring(opens in a new tab) · All classes · The area reference: Pattern matching

Under each method, its extensions (Q CS XT Z ZZ IB W U): bold and ticked, it exists; struck, it does not. The extensions and what they mean

Examples: 5 come from the library's tests; 12 were composed from each method's signature and run for this page, on a fresh object, for example o1 = new stzRegexMaker() o1.AddWordBoundary(:start) o1.AddCapturingGroup("digits", "\d+") o1.AddWordBoundary(:end). 51 methods have none yet. Examples run on 2026-10-04 07:31 inside the library at commit 0e72e2e2c.

Method
Explanation, as the source carries it
init
(no comment in the source: the name reads as a sentence) initno extension
AddRange
adding sequences
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
o1.AddRange(:Digits, "a-f", :OneOrMore, 2, 5)
? o1.Pattern()
#--> \b(?P<digits>\d+)\b[a-f]
composed from the signature, run for this page
no extension
AddAmongChars
adding sequences
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
o1.AddAmongChars("abc", :OneOrMore, 2, 5)
? o1.Pattern()
#--> \b(?P<digits>\d+)\b[abc]
composed from the signature, run for this page
no extension
AddAmongDigits
adding sequences
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
o1.AddAmongDigits("123", :OneOrMore, 2, 5)
? o1.Pattern()
#--> \b(?P<digits>\d+)\b[123]
composed from the signature, run for this page
no extension
AddNotAmongChars
adding sequences
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
o1.AddNotAmongChars("abc", :OneOrMore, 2, 5)
? o1.Pattern()
#--> \b(?P<digits>\d+)\b[^abc]
composed from the signature, run for this page
no extension
AddNotAmongDigits
adding sequences
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
o1.AddNotAmongDigits("123", :OneOrMore, 2, 5)
? o1.Pattern()
#--> \b(?P<digits>\d+)\b[^123]
composed from the signature, run for this page
no extension
AddCharsRange
adding sequences
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
o1.AddCharsRange("a-f", :OneOrMore, 2, 5)
? o1.Pattern()
#--> \b(?P<digits>\d+)\b[a-f]
composed from the signature, run for this page
no extension
AddDigitsRange
adding sequences
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
o1.AddDigitsRange("123", :OneOrMore, 2, 5)
? o1.Pattern()
#--> \b(?P<digits>\d+)\b[123]
composed from the signature, run for this page
no extension
getting the string pattern ant its fragments 2 examples run
o1 = new stzRegexMaker
o1.SetCase(:insensitive)
o1.AddCapturingGroup("quote", '[""].*?[""]')
o1.AddComment("Matches smart quotes and content")
? o1.Pattern()
#--> (?i)(?P<quote>[""].*?[""])(?#Matches smart quotes and content)
library testno extension
Fragments
(no comment in the source: the name reads as a sentence) fragmentsalso written: Fragsin the section getting the fragments of the pattern string
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
? @@( o1.Fragments() )
#--> [ "\b", "(?P<", "digits", ">", "\d+", ")", "\b" ]
composed from the signature, run for this page
QCSXTZZZIBWU
NumberOfFragements
(no comment in the source: the name reads as a sentence) number of fragementsin the section getting the fragments of the pattern string
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
? o1.NumberOfFragements()
#--> 7
composed from the signature, run for this page
no extension
HowManyFragments
(no comment in the source: the name reads as a sentence) how many fragmentsin the section getting the fragments of the pattern stringno extension
CountFragments
(no comment in the source: the name reads as a sentence) count fragmentsin the section getting the fragments of the pattern stringno extension
NumberOfFrags
(no comment in the source: the name reads as a sentence) number of fragsin the section getting the fragments of the pattern stringno extension
HowManyFrags
(no comment in the source: the name reads as a sentence) how many fragsin the section getting the fragments of the pattern stringno extension
CountFrags
(no comment in the source: the name reads as a sentence) count fragsin the section getting the fragments of the pattern stringno extension
Fragment
(no comment in the source: the name reads as a sentence) fragmentalso written: Fragin the section getting the fragments of the pattern string
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
? o1.Fragment(1)
#--> \b
composed from the signature, run for this page
QCSXTZZZIBWU
FragmentAndSequence
(no comment in the source: the name reads as a sentence) fragment and sequencein the section getting the fragments of the pattern stringno extension
FragAndSeq
(no comment in the source: the name reads as a sentence) frag and seqin the section getting the fragments of the pattern stringno extension
FragmentAndItsSequence
(no comment in the source: the name reads as a sentence) fragment and its sequencein the section getting the fragments of the pattern stringno extension
FragAndItsSeq
(no comment in the source: the name reads as a sentence) frag and its seqin the section getting the fragments of the pattern stringno extension
FragSeq
(no comment in the source: the name reads as a sentence) frag seqin the section getting the fragments of the pattern stringno extension
Quantifiers
getting the quantifiersQCSXTZZZIBWU
QuantifiersCommands
getting the quantifiersno extension
Sequences
(no comment in the source: the name reads as a sentence) sequencesalso written: Seqs · Commandsin the section getting the sequences (fragments in computable data form)QCSXTZZZIBWU
NumberOfSequences
(no comment in the source: the name reads as a sentence) number of sequencesalso written: CountSeqs · HowManySeqs · NumberOfSeqs · CountCommands · CountSequences · HowManyCommands · HowManySequences · NumberOfCommandsin the section getting the sequences (fragments in computable data form)no extension
Sequence
(no comment in the source: the name reads as a sentence) sequencealso written: Seq · Commandin the section getting the sequences (fragments in computable data form)QCSXTZZZIBWU
SequenceAndFragment
(no comment in the source: the name reads as a sentence) sequence and fragmentin the section getting the sequences (fragments in computable data form)no extension
SeqAndFrag
(no comment in the source: the name reads as a sentence) seq and fragin the section getting the sequences (fragments in computable data form)no extension
SequenceAndItsFragment
(no comment in the source: the name reads as a sentence) sequence and its fragmentin the section getting the sequences (fragments in computable data form)no extension
SeqAndItsFrag
(no comment in the source: the name reads as a sentence) seq and its fragin the section getting the sequences (fragments in computable data form)no extension
SeqFrag
(no comment in the source: the name reads as a sentence) seq fragin the section getting the sequences (fragments in computable data form)no extension
CommandAndFragment
(no comment in the source: the name reads as a sentence) command and fragmentin the section getting the sequences (fragments in computable data form)no extension
CommandAndFrag
(no comment in the source: the name reads as a sentence) command and fragin the section getting the sequences (fragments in computable data form)no extension
CommandAndItsFragment
(no comment in the source: the name reads as a sentence) command and its fragmentin the section getting the sequences (fragments in computable data form)no extension
CommandAndItsFrag
(no comment in the source: the name reads as a sentence) command and its fragin the section getting the sequences (fragments in computable data form)no extension
RepeatSequence
(no comment in the source: the name reads as a sentence) repeat sequencein the section getting the sequences (fragments in computable data form)no extension
RepeatCommand
(no comment in the source: the name reads as a sentence) repeat commandin the section getting the sequences (fragments in computable data form)no extension
CanContainAChar
(no comment in the source: the name reads as a sentence) can contain a charin the section desiging the pattern in a declarative styleno extension
CanContaingChar
(no comment in the source: the name reads as a sentence) can containg charin the section desiging the pattern in a declarative styleno extension
CanContainACharBetween
(no comment in the source: the name reads as a sentence) can contain a char betweenalso written: CanContainCharBetweenin the section desiging the pattern in a declarative styleno extension
CanContainACharAmong
(no comment in the source: the name reads as a sentence) can contain a char amongalso written: CanContainCharAmongin the section desiging the pattern in a declarative styleno extension
CanContainADigit
(no comment in the source: the name reads as a sentence) can contain a digitin the section desiging the pattern in a declarative styleno extension
CanContaingdigit
(no comment in the source: the name reads as a sentence) can containgdigitin the section desiging the pattern in a declarative styleno extension
CanContainADigitBetween
(no comment in the source: the name reads as a sentence) can contain a digit betweenalso written: CanContainDigitBetweenin the section desiging the pattern in a declarative styleno extension
CanContainADigitAmong
(no comment in the source: the name reads as a sentence) can contain a digit amongalso written: CanContainDigitAmongin the section desiging the pattern in a declarative styleno extension
AddLiteral
adding a litteral string
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
o1.AddLiteral("a")
? o1.Pattern()
#--> \b(?P<digits>\d+)\ba
composed from the signature, run for this page
no extension
AddCharacterClass
character class helperno extension
AddCharClass
character class helperno extension
AddClass
character class helperno extension
AddCommonPattern
common pattern helperno extension
AddBackReference
backreference helper
composed example
o1 = new stzRegexMaker()
o1.AddWordBoundary(:start)
o1.AddCapturingGroup("digits", "\d+")
o1.AddWordBoundary(:end)
o1.AddBackReference("a")
? o1.Pattern()
#--> \b(?P<digits>\d+)\b(?P=a)
composed from the signature, run for this page
no extension
AddUnicodeCategory
unicode category helperno extension
AddWordBoundary
word boundary helperno extension
capturing group helper 1 examples run
o1 = new stzRegexMaker
o1.SetCase(:insensitive)
o1.AddCapturingGroup("quote", '[""].*?[""]')
o1.AddComment("Matches smart quotes and content")
? o1.Pattern()
#--> (?i)(?P<quote>[""].*?[""])(?#Matches smart quotes and content)
library testno extension
match length behavior helper 1 examples run
o1 = new stzRegexMaker
o1.AddMatchLength("\w+", :shortest)  # Split "item1,item2" into separate matches
o1.AddMatchLength(".+", :longest)    # Capture "key=value" as single entry
o1.AddMatchLength("\d+", :complete)  # Match complete number without backtracking
? o1.Pattern()
#--> \w++?.++\d+++
library testno extension
AddVariableLength
variable length helperno extension
comment helper 1 examples run
o1 = new stzRegexMaker
o1.SetCase(:insensitive)
o1.AddCapturingGroup("quote", '[""].*?[""]')
o1.AddComment("Matches smart quotes and content")
? o1.Pattern()
#--> (?i)(?P<quote>[""].*?[""])(?#Matches smart quotes and content)
library testno extension
case sensitivity helper 1 examples run
o1 = new stzRegexMaker
o1.SetCase(:insensitive)
o1.AddCapturingGroup("quote", '[""].*?[""]')
o1.AddComment("Matches smart quotes and content")
? o1.Pattern()
#--> (?i)(?P<quote>[""].*?[""])(?#Matches smart quotes and content)
library testQCSXTZZZIBWU
ComposePatterns
pattern compositionno extension
DefineGroup
(no comment in the source: the name reads as a sentence) define groupin the section group reference systemno extension
ReuseGroupPattern
(no comment in the source: the name reads as a sentence) reuse group patternin the section group reference systemno extension
ReuseGroup
(no comment in the source: the name reads as a sentence) reuse groupin the section group reference systemno extension
MatchSameContentAs
(no comment in the source: the name reads as a sentence) match same content asin the section group reference systemno extension
MatchOppositeTagAs
(no comment in the source: the name reads as a sentence) match opposite tag asin the section group reference systemno extension
IsBeforeGroup
(no comment in the source: the name reads as a sentence) is before groupin the section group reference systemno extension
FindGroup
(no comment in the source: the name reads as a sentence) find groupin the section group reference systemno extension
pvtGetRepeat
(no comment in the source: the name reads as a sentence) pvt get repeatin the section group reference systemno extension