Обычный буквенный символ для регулярных выражений \w в .NET Framework соответствует буквенно-цифровым символам и, следовательно, эквивалентен [a-zA-Z0-9], верно? В .NET есть какой-либо [a-zA-Z] эквивалент?
\w
[a-zA-Z0-9]
[a-zA-Z]
Не совсем, \w также соответствует символам подчеркивания и ударения (ä, ó и т. Д.).
Если вы просто хотите сопоставить буквы (включая акцентированные), вы можете использовать свойство Unicode \p{L}
\p{L}
Из документации MSDN :
Если указано поведение, совместимое с ECMAScript, \ w эквивалентно [a-zA-Z_0-9]. Для получения информации о регулярных выражениях ECMAScript см. Параметры регулярных выражений и ECMAScript против поведения канонического соответствия.
Так что, если вы используете
new Regex("\w", RegexOptions.ECMAScript);
Это будет эквивалентно [a-zA-Z_0-9]
[a-zA-Z_0-9]