Regex - Удалить до и после определенных символов в Переменной.

  • Автор темы Автор темы The_vAe
  • Дата начала Дата начала

The_vAe

Client
Регистрация
30.05.2019
Сообщения
3 759
Реакции
1 493
Баллы
113
Помогите, пожалуйста. Использую Regex для парса и удаление лишнего с переменной.

В переменной: d:\ра\zennopost\tіsd\download\at-cm630057329.mp4
Как мне удалить все, что бы в результате получить только имя: at-cm630057329 ?

Уже заходил в Википедию Зенки по регулярным выражениям, но как удалять до и после определенного символа - так и не догнал. Может кто после того, как поможете решить эту задачу, которая описана выше - дать ссылку на видео, или детальную инструкцию, как удалять до символа и после - что бы я мог понимать, какой символ за что отвечает и какой символ отвечает за удаление до определенной строки?

Заранее, очень благодарен!

P.S: Искал через гугл site:zennolab.com удалить до символа - но того ответа который мне нужен, так получить и не смог.
 
Помогите, пожалуйста. Использую Regex для парса и удаление лишнего с переменной.

В переменной: d:\ра\zennopost\tіsd\download\at-cm630057329.mp4
Как мне удалить все, что бы в результате получить только имя: at-cm630057329 ?

Уже заходил в Википедию Зенки по регулярным выражениям, но как удалять до и после определенного символа - так и не догнал. Может кто после того, как поможете решить эту задачу, которая описана выше - дать ссылку на видео, или детальную инструкцию, как удалять до символа и после - что бы я мог понимать, какой символ за что отвечает и какой символ отвечает за удаление до определенной строки?

Заранее, очень благодарен!

P.S: Искал через гугл site:zennolab.com удалить до символа - но того ответа который мне нужен, так получить и не смог.

Экшен Обработка текста - Regex:

Регулярка:
Развернуть Свернуть Копировать
([^\\]+(?=\.mp4))

51401
 
  • Оценить
Реакции: tiptopvkr и The_vAe
  • Оценить
Реакции: Sergodjan
И как ты это делаешь, если хочешь at-cm630057329.mp4 ?

Дизайнер регексов в версии 5.41 менее удобен, чем в предыдущих версиях.
 
Спасибо большое. А инструкцию - что какой символ означает, можете порекомендовать, пожалуйста?
Я такой шпаргалкой пользуюсь:
 
  • Оценить
Реакции: marsel80, Alex.A и The_vAe
Что-то я никак понять не могу, есть в переменной текст:
C#:
Развернуть Свернуть Копировать
CZ/SK CelaskoN mam zápal plúc umieram :/
- мне нужно удалить все символы кроме букв и цифр (т.е. / \ и другие возможные : ), думал через Trim - но почему-то он умеет удалять только в начале и в конце, а в нашем случае, в тексте
C#:
Развернуть Свернуть Копировать
CZ/SK
- символ / - находится почти в центре, из-за чего не может его удалить.... Тогда нужно удалять через Regex - но я так и не понял, как удалить через него именно определенные символы, при чем в тексте, где символ в упор стоит к буквам... Как решить задачу, помогите, пожалуйста?
 
Последнее редактирование:
Что-то я никак понять не могу, есть в переменной текст:
C#:
Развернуть Свернуть Копировать
CZ/SK CelaskoN mam zápal plúc umieram :/
- мне нужно удалить все символы кроме букв и цифр (т.е. / \ и другие возможные : ), думал через Trim - но почему-то он умеет удалять только в начале и в конце, а в нашем случае, в тексте
C#:
Развернуть Свернуть Копировать
CZ/SK
- символ / - находится почти в центре, из-за чего не может его удалить.... Тогда нужно удалять через Regex - но я так и не понял, как удалить через него именно определенные символы, при чем в тексте, где символ в упор стоит к буквам... Как решить задачу, помогите, пожалуйста?
Замена по резулярке [^\w\s] на пустоту
 
  • Оценить
Реакции: Sergodjan и The_vAe
Замена по резулярке [^\w\s] на пустоту
Спасибо большое, вот как вы это делаете? Может вы посоветуете, как мне выучить эти регулярки, что бы для меня это([^\w\s] ) были не просто символы, а язык чтения, для выполнения определенных задач?
 
Спасибо большое, вот как вы это делаете? Может вы посоветуете, как мне выучить эти регулярки, что бы для меня это([^\w\s] ) были не просто символы, а язык чтения, для выполнения определенных задач?
мой справочник банален)
 
  • Оценить
Реакции: ms13 и The_vAe
А какой символ отвечает за удаление текста до или после? Как вы все его учите?
за удаление в регулярках ничто не отвечает. регулярки для поиска текста по шаблону. Хочешь что-то удалить - нужно это что-то найти. Если это что-то находится перед чем-то или после - нужно смотреть в сторону "позитивного просмотра вперед или назад"
 
  • Оценить
Реакции: The_vAe
Подскажите как удалить всё до конца строки в котором есть определённое слово?
Нужно удалить всё что находится до Жанр: мелодрама и до конца этой строки. Жанры всё время разные. В тексте есть переносы строк.
Пример текста:
Режиссеры: Наталья Покровская, Антон Уткин
Сценаристы: Наталья Покровская, Антон Уткин
Оператор: Евгений Антипов
Композитор: Надежда Грицкевич
Художник: Анна Горбас
Продюсер: Аля Береславцева
Кастинг-директор: Наталия Кириллова
Год: 2020
Премьера: 1 мая 2020
Cерий: 6
Актеры: Вера Колесникова, Роман Евдокимов, Валерия Куликова, Мария Рубцова, Алёна Бабенко, Анастасия Пронина, Алиса Дмитриева, Ясмина Омерович, Виталий Кудрявцев, Вячеслав Морозов, Никита Ветров
Жанр: мелодрама
Благополучная дочь чиновника Нина возвращается в Москву из Лондона, чтобы помочь знакомой блогерке, осужденной за участие в феминистской акции. На родине Нина остается без папиной поддержки и сталкивается с жёсткими реалиями жизни в современной Москве. Но есть и светлая сторона — Нина влюбляется. Простой уличный парень и начинающий рэпер Рома тоже выступает за справедливость, но решает проблемы кулаками. Смогут ли Нина и Рома преодолеть противоречия и помочь близким?

До слова жанр удаляю так:
(?<=Жанр:)[\w\W]*

Не могу сообразить как удалять до конца строки.
 
minfin
В два захода.
1) Удаляем заменой так, что-бы строка жанр осталась. т.е. вписываем жанр в поле "идет после искомого текста". Ставим галку перенос строк.
2) Теперь должна остаться только строка жанр. Составляем регулярку "Искомый текст начинается с" Жанр. Галки все убираем, по логике он должен взять строку целиком. Убираем тоже заменой.
3) Полученный текст в TRIM, и готово.
 
  • Оценить
Реакции: minfin
Подскажите как удалить всё до конца строки в котором есть определённое слово?
Нужно удалить всё что находится до Жанр: мелодрама и до конца этой строки. Жанры всё время разные. В тексте есть переносы строк.
Пример текста:
Режиссеры: Наталья Покровская, Антон Уткин
Сценаристы: Наталья Покровская, Антон Уткин
Оператор: Евгений Антипов
Композитор: Надежда Грицкевич
Художник: Анна Горбас
Продюсер: Аля Береславцева
Кастинг-директор: Наталия Кириллова
Год: 2020
Премьера: 1 мая 2020
Cерий: 6
Актеры: Вера Колесникова, Роман Евдокимов, Валерия Куликова, Мария Рубцова, Алёна Бабенко, Анастасия Пронина, Алиса Дмитриева, Ясмина Омерович, Виталий Кудрявцев, Вячеслав Морозов, Никита Ветров
Жанр: мелодрама
Благополучная дочь чиновника Нина возвращается в Москву из Лондона, чтобы помочь знакомой блогерке, осужденной за участие в феминистской акции. На родине Нина остается без папиной поддержки и сталкивается с жёсткими реалиями жизни в современной Москве. Но есть и светлая сторона — Нина влюбляется. Простой уличный парень и начинающий рэпер Рома тоже выступает за справедливость, но решает проблемы кулаками. Смогут ли Нина и Рома преодолеть противоречия и помочь близким?

До слова жанр удаляю так:
(?<=Жанр:)[\w\W]*

Не могу сообразить как удалять до конца строки.
Код:
Развернуть Свернуть Копировать
[\w\W]+Жанр:.*\n
 
  • Оценить
Реакции: minfin
minfin
В два захода.
1) Удаляем заменой так, что-бы строка жанр осталась. т.е. вписываем жанр в поле "идет после искомого текста". Ставим галку перенос строк.
2) Теперь должна остаться только строка жанр. Составляем регулярку "Искомый текст начинается с" Жанр. Галки все убираем, по логике он должен взять строку целиком. Убираем тоже заменой.
3) Полученный текст в TRIM, и готово.
Спасибо за ответ, но слишком мудрённо. Воспользовался решением ниже.
 
  • Оценить
Реакции: Mikhail B.
Воспользовался решением ниже.
Да интересное решение. Я такого не умею.)) Регулярки сила, даже знания регулярок на уровне новичка дают большие возможности обработки текста.
 
Може кто нибудь подскажет кааак удалить не известные символы...т.е. они разные всегда


Что бы осталось только zaebalsya_uje

Конструкция всегда одного вида.. https://*/*/*/*.html
 
  • Оценить
Реакции: Fose13
  • Оценить
Реакции: ильяsffse
Не хотелось создавать новый топ.Напишу здесь. Много чего уже забыл по регуляркам,не обессудьте.

рандомстрока: nyuta.pavlova.98@inbox.ru:6idHVL:anna.pavlova1998@gmail.com
Как откинуть все после второго двоеточия вместе с ним. После второго двоеточия всегда разное значение.
 
Не хотелось создавать новый топ.Напишу здесь. Много чего уже забыл по регуляркам,не обессудьте.

рандомстрока: nyuta.pavlova.98@inbox.ru:6idHVL:anna.pavlova1998@gmail.com
Как откинуть все после второго двоеточия вместе с ним. После второго двоеточия всегда разное значение.
Попробуйте такую регулярку: :([^:]+$) через "Обработка текста - Замена" (на пустоту).

86019
 
  • Оценить
Реакции: Семен12
Друзья! Есть список:

/football/21317-africa-cup-of-nations
/football/21317-africa-cup-of-nations/379407831-benin-mozambique
/football/21317-africa-cup-of-nations/379408076-sudan-democratic-republic-of-the-congo-kinshasa
/football/1706694-uefa-nations-league
/football/1706694-uefa-nations-league/379405306-republic-of-ireland-ukraine
/football/1706694-uefa-nations-league/379405489-scotland-armenia
/football/1706694-uefa-nations-league/379405574-belgium-poland
/football/1706694-uefa-nations-league/379405159-wales-netherlands
/football/119577-copa-argentina
/football/119577-copa-argentina/379407868-ferro-carril-oeste-boca-juniors

Подскажите, как оставить только строчки, содержащие 3 символа /
_________________________________________________

Разобрался

/.+/.+/.+
 
Последнее редактирование:
как удалить все что находится в начале слеша / a/a.jpg оставить a.jpg
 
как удалить все что находится в начале слеша / a/a.jpg оставить a.jpg
Сама регулярка:
(?<=\/)[^\/]+$

C#:
Развернуть Свернуть Копировать
// Запись в перменную данных
project.Variables["ИмяПеременнойЗенно"].Value = @"a/a.jpg";
// Вырезаем Регуляркой Нужное
project.Variables["ИмяПеременнойЗенно"].Value = System.Text.RegularExpressions.Regex.Match(project.Variables["ИмяПеременнойЗенно"].Value, @"(?<=\/)[^\/]+$").Value;
// Выводим результат в лог
return project.Variables["ИмяПеременнойЗенно"].Value;
Либо кубиком:
108285
 
  • Оценить
Реакции: art22
Сама регулярка:
(?<=\/)[^\/]+$

C#:
Развернуть Свернуть Копировать
// Запись в перменную данных
project.Variables["ИмяПеременнойЗенно"].Value = @"a/a.jpg";
// Вырезаем Регуляркой Нужное
project.Variables["ИмяПеременнойЗенно"].Value = System.Text.RegularExpressions.Regex.Match(project.Variables["ИмяПеременнойЗенно"].Value, @"(?<=\/)[^\/]+$").Value;
// Выводим результат в лог
return project.Variables["ИмяПеременнойЗенно"].Value;
Либо кубиком:
Интересно, сколько стоит обучение у такого профессионала C# :D
 
  • Оценить
Реакции: art22
Cработала. слеш неправильно поставил)
 
  • Оценить
Реакции: Sergodjan
есть строчка как удалить так же все до последнего слеша что бы было без последнего слеша
входная строчка D:\zenno\argumentatif_essay\Papers_avaliable_from_the_essay_writer.txt
выходная строчка после обработки Papers_avaliable_from_the_essay_writer.txt
 
есть строчка как удалить так же все до последнего слеша что бы было без последнего слеша
входная строчка D:\zenno\argumentatif_essay\Papers_avaliable_from_the_essay_writer.txt
выходная строчка после обработки Papers_avaliable_from_the_essay_writer.txt
В С# это решается одной строчкой кода Path.GetFileName(path);
Пример:
C#:
Развернуть Свернуть Копировать
var path = "D:\\zenno\\argumentatif_essay\\Papers_avaliable_from_the_essay_writer.txt";
var result = Path.GetFileName(path);

//result => Papers_avaliable_from_the_essay_writer.txt
 
есть строчка как удалить так же все до последнего слеша что бы было без последнего слеша
входная строчка D:\zenno\argumentatif_essay\Papers_avaliable_from_the_essay_writer.txt
выходная строчка после обработки Papers_avaliable_from_the_essay_writer.txt
Регулярка [^\\]+$ в кубике "Обработка текста - Regex".

109362
 
  • Оценить
Реакции: heks

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)