Replacement Strings Reference: Conditionals (original) (raw)

RegexBuddy—Better than a regular expression reference!

Feature Syntax Description Example JGsoft .NET Java Perl PCRE2 PHP Delphi R JavaScript VBScript XRegExp Python Ruby std::regex Boost Tcl ARE Oracle XPath
Conditional ?1yes:no through ?99yes:no Conditional referencing a numbered capturing group. Inserts the “yes” part if the group participated or the “no” part if it didn’t. Replacing all matches of (y)?|n in yyn! with ?1yes:no yields yesyesno! no no no no no no no no no no no no no no all no no no
Conditional (?1yes:no) through (?99yes:no) Conditional referencing a numbered capturing group. Inserts the “yes” part if the group participated or the “no” part if it didn’t. Replacing all matches of (y)?|n in yyn! with (?1yes:no) yields yesyesno! V2 no no no no no no no no no no no no no all no no no
Conditional (?10yes:no) through (?99yes:no) When there are fewer capturing groups than the 2-digit number, treat this as a single-digit conditional with the “yes” part starting with a literal number instead of as an invalid conditional. Replacing all matches of (y)?|n in yyn! with (?19yes:no) yields 9yes9yesno! V2 n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a no n/a n/a n/a
Conditional ?{1}yes:no through ?{99}yes:no Conditional referencing a numbered capturing group. Inserts the “yes” part if the group participated or the “no” part if it didn’t. Replacing all matches of (y)?|n in yyn! with ?{1}yes:no yields yesyesno! no no no no no no no no no no no no no no all1.42–1.88 no no no
Conditional (?{1}yes:no) through (?{99}yes:no) Conditional referencing a numbered capturing group. Inserts the “yes” part if the group participated or the “no” part if it didn’t. Replacing all matches of (y)?|n in yyn! with (?{1}yes:no) yields yesyesno! V2 no no no no no no no no no no no no no all1.42–1.88 no no no
Conditional 1:+yes:nothrough{1:+yes:no} through 1:+yes:nothrough{99:+yes:no} Conditional referencing a numbered capturing group. Inserts the “yes” part if the group participated or the “no” part if it didn’t. Replacing all matches of (y)?|n in yyn! with ${1:+yes:no} yields yesyesno! V2 no no no extended no no no no no no no no no no no no no
Conditional 1:−nothrough{1:-no} through 1:nothrough{99:-no} Conditional referencing a numbered capturing group. Inserts the text captured by the group if it participated or the contents of the conditional if it didn’t. Replacing all matches of (y)?|n in yyn! with ${1:-no} yields yyno! V2 no no no extended no no no no no no no no no no no no no
Conditional Any numbered conditional A conditional that references the number of a capturing group that does not exist acts as a conditional to a group that never participates. Replacing all matches of (y)?|n in yyn! with (?9yes:no) yields nonono! V2 error n/a n/a n/a extended error n/a n/a n/a n/a n/a n/a n/a n/a n/a all n/a n/a n/a
Conditional $?{name}yes:no Conditional referencing a named capturing group. Inserts the “yes” part if the group participated or the “no” part if it didn’t. Replacing all matches of (?'one'y)?|n in yyn! with ?{one}yes:no yields yesyesno! no no no no no no no no no no no no no no all1.42–1.88 no no no
Conditional (?{name}yes:no) Conditional referencing a named capturing group. Inserts the “yes” part if the group participated or the “no” part if it didn’t. Replacing all matches of (?'one'y)?|n in yyn! with (?{one}yes:no) yields yesyesno! V2 no no no no no no no no no no no no no all1.42–1.88 no no no
Conditional name:+yes:no∣Conditionalreferencinganamedcapturinggroup.Insertsthe“yes”partifthegroupparticipatedorthe“no”partifitdidn’t.∣Replacingallmatchesof(?′one′y)?∥ninyyn!with{name:+yes:no} Conditional referencing a named capturing group. Inserts the “yes” part if the group participated or the “no” part if it didn’t. Replacing all matches of (?'one'y)?|n in yyn! with name:+yes:noConditionalreferencinganamedcapturinggroup.Insertstheyespartifthegroupparticipatedorthenopartifitdidnt.∣Replacingallmatchesof(?oney)?ninyyn!with{one:+yes:no} yields yesyesno! V2 no no no extended no no no no no no no no no no no no no
Conditional name:−no∣Conditionalreferencinganamedcapturinggroup.Insertsthetextcapturedbythegroupifitparticipatedorthecontentsoftheconditionalifitdidn’t.∣Replacingallmatchesof(?′one′y)?∥ninyyn!with{name:-no} Conditional referencing a named capturing group. Inserts the text captured by the group if it participated or the contents of the conditional if it didn’t. Replacing all matches of (?'one'y)?|n in yyn! with name:noConditionalreferencinganamedcapturinggroup.Insertsthetextcapturedbythegroupifitparticipatedorthecontentsoftheconditionalifitdidnt.∣Replacingallmatchesof(?oney)?ninyyn!with{one:-no} yields yyno! V2 no no no extended no no no no no no no no no no no no no
Conditional Any named conditional A conditional that references the name of a capturing group that does not exist is treated as literal text. Replacing all matches of (y)?|n in yn! with (?{name}yes:no) yields ?{name}yes:no?{name}yes:no! V2 error n/a n/a n/a extended error n/a n/a n/a n/a n/a n/a n/a n/a n/a all1.42–1.88 n/a n/a n/a
Feature Syntax Description Example JGsoft .NET Java Perl PCRE2 PHP Delphi R JavaScript VBScript XRegExp Python Ruby std::regex Boost Tcl ARE Oracle XPath