CultureInvariant
RegexOptions.CultureInvariant сравнивает
символы по инвариантным правилам, без локали
потока. Вместе с
IgnoreCase это
важно для буквы I и похожих случаев
в разных культурах. В примерах показывают
флаг на простом шаблоне без смены культуры.
Синтаксис
RegexOptions opts = RegexOptions.IgnoreCase | RegexOptions.CultureInvariant;
Пример
Давайте искать ABC с двумя флагами:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
var opts = RegexOptions.IgnoreCase | RegexOptions.CultureInvariant;
Console.WriteLine(Regex.IsMatch("abcde", @"ABC", opts));
}
}
Результат выполнения кода:
True
Пример
Давайте создать Regex только с CultureInvariant:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
var re = new Regex(@"12345", RegexOptions.CultureInvariant);
Console.WriteLine(re.IsMatch("12345"));
}
}
Результат выполнения кода:
True
Пример
Давайте проверить числовой шаблон в "abcde":
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
var re = new Regex(@"\d+", RegexOptions.CultureInvariant);
Console.WriteLine(re.IsMatch("abcde"));
}
}
Результат выполнения кода:
False
Смотрите также
-
флаг
IgnoreCase,
который часто идёт вместе с CultureInvariant -
перечисление
RegexOptions,
куда входит CultureInvariant -
класс
Regex,
которому передают флаги -
символ
any,
который с точкой связан Singleline