IgnorePatternWhitespace
RegexOptions.IgnorePatternWhitespace убирает
из шаблона неэкранированные пробелы и
комментарии от # до конца строки.
Пробел в классе [ ] не игнорируется.
Чтобы искать пробел в тексте, его экранируют
или кладут в класс.
Синтаксис
new Regex(@"a b c", RegexOptions.IgnorePatternWhitespace);
Пример
Давайте сопоставить a b c с "abcde":
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
var re = new Regex(@"a b c d e", RegexOptions.IgnorePatternWhitespace);
Console.WriteLine(re.IsMatch("abcde"));
}
}
Результат выполнения кода:
True
Пример
Давайте найти пробел через класс [ ]:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
var re = new Regex(@"abc[ ]def", RegexOptions.IgnorePatternWhitespace);
Console.WriteLine(re.IsMatch("abc def"));
}
}
Результат выполнения кода:
True
Пример
Давайте прочитать совпадение с пробелами в шаблоне:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
var m = Regex.Match("abcde", @"a b c", RegexOptions.IgnorePatternWhitespace);
Console.WriteLine(m.Value);
}
}
Результат выполнения кода:
"abc"
Смотрите также
-
перечисление
RegexOptions,
куда входит IgnorePatternWhitespace -
класс
Regex,
которому передают флаги -
флаг
Compiled,
который иногда добавляют к длинным шаблонам -
символ
any,
который с точкой связан Singleline