Assume I have this:
Regex.Replace("aa cc bbbb","aa cc","",RegexOptions.IgnoreCase);
But I also need to ignore white-spaces. So, I found an option IgnorePatternWhitespace
, but how can I add several options to one regex.Replace?
Something like:
Regex.Replace("aa cc bbbb", "aa cc", "",
RegexOptions.IgnoreCase + RegexOptions.IgnorePatterWhitespace);
Update:
Thanks for answers but this option does not seem to work: here's a test example:
Regex.Replace("aa cc bbbb", "aacc", "",
RegexOptions.IgnoreCase | RegexOptions.IgnorePatterWhitespace);
Use bitwise OR (|
)
Regex.Replace("aa cc bbbb",
"aa cc",
"",
RegexOptions.IgnoreCase | RegexOptions.IgnorePatterWhitespace);
Regex.Replace("aa cc bbbb","aa cc","",RegexOptions.IgnoreCase | RegexOptions.IgnorePatterWhitespace);
Use the |
operator.
Edit :
You got it completely wrong. RegexOption.IgnorePatterWhitespace
ignores the whitespace in the regex so that you can do :
string pattern = @"
^ # Beginning of The Line
\d+ # Match one to n number but at least one..
";
You however think that ingoring whitespace makes "aa cc bbbb"
into "aaccbbbb"
which is thankfully wrong.
According to MSDN:
A bitwise OR combination of RegexOption enumeration values.
So just use OPT_A | OPT_B
You can have as many RegexOptions as you like, just "OR" them with "|".
For example...
RegexOptions.Compiled | RegexOptions.IgnoreCase
IgnorePatternWhitespace
Eliminates unescaped white space from the pattern and enables comments marked with #. However, the IgnorePatternWhitespace value does not affect or eliminate white space in character classes.
so:
string result = Regex.Replace("aa cc bbbb","aa|cc","",RegexOptions.IgnoreCase).Trim();
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With