Реализация Regex в Mono имеет ошибку, которая означает, что она неправильно обрабатывает вычитание класса символов regex.
IE: "[ab- [a]]" должен фактически быть набором символов "[b]".
Например, следующий код в .NET выведет «\ ncat \ nsat \ non \ nthe \ nmat».
Этот пример содержит упрощенное регулярное выражение, которое я пытаюсь заставить работать в моно.
string listOfUnicodeChars = "\u2e80";
string patten =
"[\\p{Lu}\\p{Ll}\\p{Lt}\\p{Lo}\\p{Mn}\\p{Mc}\\p{Lm}-[" + listofUnicodeChars +"]]+";
Regex regex = new Regex(pattern);
foreach (var match in regex.Matches("The cat sat on the mat."))
Console.WriteLine(match);
, но при использовании mono регулярное выражение ничего не соответствует.
У кого-нибудь есть какие-либо предложения о том, как получить тот же эффект с помощью регулярного выражения, написанного по-другому?