View previous topic :: View next topic |
Как часто вы пользуетесь регулярными выражениями (RegEx)? |
Раз в день |
|
33% |
[ 34 ] |
Раз в неделю |
|
18% |
[ 19 ] |
Раз в месяц |
|
27% |
[ 28 ] |
А что это такое? |
|
19% |
[ 20 ] |
|
Total Votes : 101 |
|
Author |
Message |
JKT
Joined: 22 Sep 2009 Posts: 116 Location: Харьков
|
(Separately) Posted: Sat Aug 06, 2011 22:00 Post subject: |
|
|
Уважаемые, подскажите пожалуйста рэгэксп
Есть имя файла "Имя Фамилия" (без кавычек) , надо переименовать "Фамилия Имя", - переставить слова (разделитель - пробел)
Спасибо |
|
Back to top |
|
|
MVV
Joined: 15 Oct 2009 Posts: 4811 Location: Ростов-Дон
|
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10268 Location: Россия, Саратов
|
(Separately) Posted: Sun Aug 07, 2011 00:06 Post subject: |
|
|
JKT
Другой вариант (расширение обязательно есть, точка только перед ним):
Найти: (.*) (.*)\.
Заменить на: $2 $1\. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Serge Yolkin
Joined: 25 Jul 2009 Posts: 664
|
(Separately) Posted: Sun Aug 07, 2011 00:11 Post subject: |
|
|
Или (\S+)\s(\S+)(\..*)$ заменить на $2 $1$3, если пробел только один - между именем и фамилией (доллар в конце добавлен на случай, если все-таки не один, хоть ошибки не будет). А вообще-то, пример на тему "как поменять местами имя и фамилию" - чуть не на каждом сайте по регэкспам...
Добавлено спустя 1 час 2 минуты:
Кстати, есть довольно удобная весч для отладки регэкспов: http://regexpres.narod.ru/calculator.html Сам пользуюсь. |
|
Back to top |
|
|
JKT
Joined: 22 Sep 2009 Posts: 116 Location: Харьков
|
(Separately) Posted: Sun Aug 07, 2011 02:23 Post subject: |
|
|
MVV
Спасибо!
Все работает!
Avada, Serge Yolkin , большой сенк за участие, другие варианты завтра попробую. Как попробую - отпишусь.
А вообще-то, может сделать отдельную ветку, где будут готовые решения по регэкспам, конкретные примеры? Как тут есть "обсуждения" . Тут обсуждения, а вдругой готовые?
Дело вдругом...... Рэгэкспы ТС и других прог могут по синтаксису отличаться. Я вот, например тэги аудиофайлов редакчу в mp3tag там малость синтаксис отличается. От потому и спросил и там и тут.
P.S.
Вот мои пять копеек в копилку:
Имеем текст "ХХХХ - УУУУ" - Задача: оставить только ХХХХ (разделитель " - " (пробел-дефис-пробел) - часто встречается в тэгах аудио "артист - песня". Задача: оставить только "XXXX". Решение;
(.*?)\s+-.*
$1 |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10268 Location: Россия, Саратов
|
(Separately) Posted: Sun Aug 07, 2011 08:01 Post subject: |
|
|
JKT wrote: | А вообще-то, может сделать отдельную ветку, где будут готовые решения по регэкспам, конкретные примеры? Как тут есть "обсуждения" . Тут обсуждения, а вдругой готовые? |
В этой теме уже всё вперемешку, такой она, увы, и останется. Сама по себе мысль о разделении здравая, но у нас на разных подфорумах много чего предлагалось разделять, так что будет какая-то очерёдность обсуждения и реализации. Пока предложение принято к сведению. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Olaf
Joined: 23 Mar 2006 Posts: 11
|
(Separately) Posted: Sat Dec 15, 2012 15:51 Post subject: |
|
|
Здравствуйте, мне требуется помощь в такой проблеме: нужно использовать подстановочные символы в качестве шаблона для выделения/фильтрации файлов.
Есть папка с файлами, из которых мне нужно выделить
1) те, которые начинаются на 4 цифры, после которых идёт пробел или буква и пробел (например "1234 1234.1st" и "1234b 1234 1234.1st")
2) те, которые начинаются с 5 и более цифр.
пока что я застрял на первом же пункте
пытаюсь написать "\b\d{4}? .", но при этом у меня выделяются и те файлы, которые содержат в себе фрагмент, отделённый пробелом, после которой идёт искомая часть (например файл "abcd 1234 1234.1st")
Что я не так делаю? Как это сделать правильно? Заранее благодарен |
|
Back to top |
|
|
Rodny
Joined: 24 Jan 2007 Posts: 949 Location: Могилёв, Беларусь
|
(Separately) Posted: Sat Dec 15, 2012 16:15 Post subject: |
|
|
Буквы только латинские?
1) Найти: ^\d{4}[a-zA-Z]?\s
2) Найти: ^\d{5,} |
|
Back to top |
|
|
Olaf
Joined: 23 Mar 2006 Posts: 11
|
(Separately) Posted: Sat Dec 15, 2012 21:03 Post subject: |
|
|
Rodny, да, так всё работает, спасибо огромное!
upd: а как сделать наоборот - показывать все файлы, кроме этих двух типов? |
|
Back to top |
|
|
Avada
Joined: 01 Aug 2008 Posts: 10268 Location: Россия, Саратов
|
(Separately) Posted: Sat Dec 15, 2012 22:05 Post subject: |
|
|
C учётом реального содержания этой темы она переносится из "Секретов и советов" в "Общие вопросы". Справочник по регэкспам тут, увы, не получился... _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
Back to top |
|
|
Rodny
Joined: 24 Jan 2007 Posts: 949 Location: Могилёв, Беларусь
|
(Separately) Posted: Sun Dec 16, 2012 12:57 Post subject: |
|
|
Olaf wrote: | а как сделать наоборот - показывать все файлы, кроме этих двух типов? |
Что-то типа: ^([^0-9]{4}[^a-zA-Z]?\S|[^0-9]{5,}).+ |
|
Back to top |
|
|
Olaf
Joined: 23 Mar 2006 Posts: 11
|
(Separately) Posted: Sun Dec 16, 2012 13:48 Post subject: |
|
|
Rodny, буду пробовать, спасибо ещё раз! |
|
Back to top |
|
|
Strek
Joined: 17 Oct 2010 Posts: 195
|
(Separately) Posted: Sat Mar 23, 2013 06:21 Post subject: |
|
|
Как искать ссылки http и https? |
|
Back to top |
|
|
Rodny
Joined: 24 Jan 2007 Posts: 949 Location: Могилёв, Беларусь
|
(Separately) Posted: Sat Mar 23, 2013 13:38 Post subject: |
|
|
Где? В принципе, найти: "https?://" и т.д. |
|
Back to top |
|
|
Strek
Joined: 17 Oct 2010 Posts: 195
|
(Separately) Posted: Sat Mar 23, 2013 16:20 Post subject: |
|
|
Rodny wrote: | Где? В принципе, найти: "https?://" и т.д. |
В текстовых файлах |
|
Back to top |
|
|
|