21 января 2010

Как удалить из строки все буквы кроме некоторых?

Иногда возникает задача удалить из строки все символы кроме некоторых. На мой взгляд для этой задачи регулярные выражения в самый раз задуманы.
для Oracle
select regexp_replace('АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя','[^кя]','',1,0,'i') from dual;

Для углубления в тему регулярных выражений в Oracle следует почитать это.

для C#

Regex r = new Regex("[^кя]*",RegexOptions.IgnoreCase);
Console.WriteLine(r.Replace("АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя", ""));

Для .Net кодеров полезно прочитать — Регулярные выражения в .NET Framework
+2
07 декабря 2009

Отладчик регулярок

  • написал: MpaK
  • 36
О, давно искал себе удобный отладчик регулярных выражений, кажется нашел gskinner.com/RegExr/

В закладки однозначно!
0