Иногда возникает задача удалить из строки все символы кроме некоторых. На мой взгляд для этой задачи регулярные выражения в самый раз задуманы.
для Oracle
select regexp_replace('АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя','[^кя]','',1,0,'i') from dual;
Для углубления в тему регулярных выражений в Oracle следует почитать
это.
для C#
Regex r = new Regex("[^кя]*",RegexOptions.IgnoreCase);
Console.WriteLine(r.Replace("АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя", ""));
Для .Net кодеров полезно прочитать —
Регулярные выражения в .NET Framework
Комментарии (6)
RSS свернуть / развернутьи как кстати с «жадностью» оператора * в этой реализации?
MpaK
А жадность для того чтоб удалять последовательности символов не попадающих в диапазон исключения.
eye-ru
najar
MpaK
najar
xxen
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.