Список, удалить строки, Содержащие Текст

Ara

Client
Регистрация
14.02.2018
Сообщения
192
Благодарностей
14
Баллы
18
Подскажите!
Как можно, это дело упростить. Вместо того чтобы делать несколько таких экшенов, сделать код в C#
 

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113
Подскажите!
Как можно, это дело упростить. Вместо того чтобы делать несколько таких экшенов, сделать код в C#
У что тут упрощать? Конкретно задача какая стоит?
 

Ara

Client
Регистрация
14.02.2018
Сообщения
192
Благодарностей
14
Баллы
18
Копируем в "Список 1" текст в 30 строк к примеру. Нужно удалить строки содержащие Заданные слова. И чтобы не создавать несколько экшенов, Создать один C# и вписать туда заданные слова для удаления строк в Списке 1
 

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113
Копируем в "Список 1" текст в 30 строк к примеру. Нужно удалить строки содержащие Заданные слова. И чтобы не создавать несколько экшенов, Создать один C# и вписать туда заданные слова для удаления строк в Списке 1
Воспользуйтесь регуляркой.
Код:
(?i)(один|два|три)
 

Ara

Client
Регистрация
14.02.2018
Сообщения
192
Благодарностей
14
Баллы
18
Чета не как, Мне надо чтоб всю строку удалила где есть заданное слово, а не просто это слово
 
  • Спасибо
Реакции: Mikhail B.

Ara

Client
Регистрация
14.02.2018
Сообщения
192
Благодарностей
14
Баллы
18
Я извиняюсь, все работает, просто не так сделал
 

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113

xopek2007

Client
Регистрация
10.05.2013
Сообщения
101
Благодарностей
8
Баллы
18
Здравствуйте!
Подскажите пожалуйста, как удалить стоки содержащие 1,2,3, но не удалять 11,12,30 и тп?
 

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Здравствуйте!
Подскажите пожалуйста, как удалить стоки содержащие 1,2,3, но не удалять 11,12,30 и тп?
Попробуйте регулярку \b(1|2|3)\b
Она удалит строки, в которых заданные цифры являются отдельным членом предложения, а не частью какого-то слова.
Иными словами, строка "У нас есть 1 шанс" попадёт под регулярку, а вот строка "Ты пришёл 1й" уже не попадёт.

Экшен Операции над списком - Удалить строки - Удовлетворяющие регулярному выражению
65980
 

xopek2007

Client
Регистрация
10.05.2013
Сообщения
101
Благодарностей
8
Баллы
18
Блин, не точно обрисовал проблему. В списке строки вида:
Код:
C:\projects\1.zp
C:\projects\1reg.zp
C:\projects\2.zp
C:\projects\2reg.zp
C:\projects\3.zp
...
C:\projects\10.zp
C:\projects\10reg.zp
C:\projects\11.zp
Я получаю перечень уже добавленных в ZP имен проектов в виде 1,2,2reg,11. Как удалить взять из него строку не содержащую 1,2,2reg,11?
 

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113

xopek2007

Client
Регистрация
10.05.2013
Сообщения
101
Благодарностей
8
Баллы
18
Я получаю список файлов из директории с проектами. Затем получаю имена проектов уже добавленных в ZP.
Мне необходимо взять из списка строку, которая не содержит имя проекта уже открытого в ZP.
 

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113
Я получаю список файлов из директории с проектами. Затем получаю имена проектов уже добавленных в ZP.
Мне необходимо взять из списка строку, которая не содержит имя проекта уже открытого в ZP.
Позволю себе оттолкнуться от темы разговора. Если вы пытаетесь управлять шаблонами, то рекомендую ознакомится с этой статьей.

 
  • Спасибо
Реакции: xopek2007

nicanil

Client
Регистрация
06.03.2016
Сообщения
2 242
Благодарностей
1 804
Баллы
113
Я получаю список файлов из директории с проектами. Затем получаю имена проектов уже добавленных в ZP.
Мне необходимо взять из списка строку, которая не содержит имя проекта уже открытого в ZP.
Попробуйте такое регулярное выражение - \\(1|2|3)\.(zp|xmlz)$ Вместо 1, 2, 3 нужно подставить Ваши имена.

Если имя проекта одно, то можно так - \\3reg\.(zp|xmlz)$

Экшен тот же, что я описывал в сообщении выше.
 
  • Спасибо
Реакции: xopek2007

TeslaCo

Client
Регистрация
25.10.2016
Сообщения
61
Благодарностей
2
Баллы
8
Воспользуйтесь регуляркой.
Код:
(?i)(один|два|три)
Подскажите, как поменять регулярку, что бы учитывались только те строки, в которых есть все три слова одновременно?
 
Последнее редактирование:

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113
Подскажите, как поменять регулярку, что бы учитывались только те строки, в которых есть все три слова одновременно?
они в рандомном порядке? если нет, то просто палки убери в скобках напиши. Пробелы не забудь экранировать

2022-08-26_030731.jpg
 

TeslaCo

Client
Регистрация
25.10.2016
Сообщения
61
Благодарностей
2
Баллы
8
Последнее редактирование:

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 462
Благодарностей
8 686
Баллы
113
Подскажите, как поменять регулярку, что бы учитывались только те строки, в которых есть все три слова одновременно?
Да, в рандомном. Это куски url, они находятся не последовательно.
Наверное есть более изящная регулярка, но навскидку можно так:

96348
 

TeslaCo

Client
Регистрация
25.10.2016
Сообщения
61
Благодарностей
2
Баллы
8

Mikhail B.

Moderator
Регистрация
23.12.2014
Сообщения
14 328
Благодарностей
5 431
Баллы
113
этот метод не работает для списков, удаляет все строки (хотя в списке есть совпадения по содержанию)
Примеры в студию, только в код C#, что в списке и что нужно искать.
 

TeslaCo

Client
Регистрация
25.10.2016
Сообщения
61
Благодарностей
2
Баллы
8
C#:
https://aqv.by/products/maslo-motornoe-sintetich-mannol-extreme-ester-sae-5w-40-api-snch-4-1l
https://aqv.by/products/maslo-motornoe-sinteticheskoe-mannol-extreme-ester-sae-5w-40-api-snch-4
https://aqv.by/products/maslo-motornoe-sinteticheskoe-mannol-energy-sae-5w-30-api-snch-4-ester
https://aqv.by/products/maslo-motornoe-sinteticheskoe-dlya-2-htaktnyh-dvigatelej-mannol-7858-agro-for-husqvarna-api-tc-05l
https://aqv.by/products/maslo-motornoe-na-sintet-oj-osnove-dlya-2-h-takt-dvigatelej-mannol-7858-agro-formula-s-api-tc-100ml
https://aqv.by/products/maslo-sae-30-1l-briggsstratton-dlya-4-h-taktnyh-dvigatelej
https://aqv.by/products/sredstvo-dlya-mytya-posudy-grass-velly-limon-1l
https://aqv.by/products/sredstvo-dlya-mytya-posudy-grass-viva-5kg
https://aqv.by/products/sredstvo-dlya-mytya-posudy-grass-viva-5kgne-ispolzovat
https://aqv.by/products/sredstvo-dlya-mytya-posudy-grass-velly-premium-lajm-i-myata-1l
https://aqv.by/products/komplekt-plastikovyh-kistej-grass-s-iskusstvennym-vorsom-
Что должно быть строке одновременно:
maslo-motornoe
extreme
api
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 462
Благодарностей
8 686
Баллы
113
C#:
https://aqv.by/products/maslo-motornoe-sintetich-mannol-extreme-ester-sae-5w-40-api-snch-4-1l
https://aqv.by/products/maslo-motornoe-sinteticheskoe-mannol-extreme-ester-sae-5w-40-api-snch-4
https://aqv.by/products/maslo-motornoe-sinteticheskoe-mannol-energy-sae-5w-30-api-snch-4-ester
https://aqv.by/products/maslo-motornoe-sinteticheskoe-dlya-2-htaktnyh-dvigatelej-mannol-7858-agro-for-husqvarna-api-tc-05l
https://aqv.by/products/maslo-motornoe-na-sintet-oj-osnove-dlya-2-h-takt-dvigatelej-mannol-7858-agro-formula-s-api-tc-100ml
https://aqv.by/products/maslo-sae-30-1l-briggsstratton-dlya-4-h-taktnyh-dvigatelej
https://aqv.by/products/sredstvo-dlya-mytya-posudy-grass-velly-limon-1l
https://aqv.by/products/sredstvo-dlya-mytya-posudy-grass-viva-5kg
https://aqv.by/products/sredstvo-dlya-mytya-posudy-grass-viva-5kgne-ispolzovat
https://aqv.by/products/sredstvo-dlya-mytya-posudy-grass-velly-premium-lajm-i-myata-1l
https://aqv.by/products/komplekt-plastikovyh-kistej-grass-s-iskusstvennym-vorsom-
Что должно быть строке одновременно:
maslo-motornoe
extreme
api
Приложил пример шаблона с удалением строк по регулярке: (maslo-motornoe|extreme|api)*(maslo-motornoe|extreme|api)*(maslo-motornoe|extreme|api)

Вот что осталось в списке на выходе:

96425
 

Вложения

Последнее редактирование:
  • Спасибо
Реакции: TeslaCo

TeslaCo

Client
Регистрация
25.10.2016
Сообщения
61
Благодарностей
2
Баллы
8
Приложил пример шаблона с удалением строк по регулярке: (maslo-motornoe|extreme|api)*(maslo-motornoe|extreme|api)*(maslo-motornoe|extreme|api)
Нужно что бы остались строки которые содержат все три слова одновременно(а не удалить все строки с этими словами):
maslo-motornoe
extreme
api
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 462
Благодарностей
8 686
Баллы
113
Нужно что бы остались строки которые содержат все три слова одновременно(а не удалить все строки с этими словами):
maslo-motornoe
extreme
api
Поменяйте в кубике работы со списком критерий на "Не удовлетворяющие рег-выражению" и замените регулярку на: (maslo-motornoe|extreme|api).*(maslo-motornoe|extreme|api).*(maslo-motornoe|extreme|api)

96441
 

Вложения

  • Спасибо
Реакции: TeslaCo

TeslaCo

Client
Регистрация
25.10.2016
Сообщения
61
Благодарностей
2
Баллы
8
Поменяйте в кубике работы со списком критерий на "Не удовлетворяющие рег-выражению" и замените регулярку на: (maslo-motornoe|extreme|api).*(maslo-motornoe|extreme|api).*(maslo-motornoe|extreme|api)
Скажите а если вот такая конструкция:
{-Variable.Variable1-} = maslo-motornoe
{-Variable.Variable2-} = extreme
{-Variable.Variable3-} - а тут пусто


({-Variable.Variable1-}|{-Variable.Variable2-}|{-Variable.Variable3-}).*({-Variable.Variable1-}|{-Variable.Variable2-}|{-Variable.Variable3-}).*({-Variable.Variable1-}|{-Variable.Variable2-}|{-Variable.Variable3-})
Сейчас ничего не происходит, ничего не удаляет, как в регулярке задать что бы игнорировались пустые значения, и конструкция работала с другими значениями, которые не пустые?
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
19 462
Благодарностей
8 686
Баллы
113
Скажите а если вот такая конструкция:
{-Variable.Variable1-} = maslo-motornoe
{-Variable.Variable2-} = extreme
{-Variable.Variable3-} - а тут пусто


({-Variable.Variable1-}|{-Variable.Variable2-}|{-Variable.Variable3-}).*({-Variable.Variable1-}|{-Variable.Variable2-}|{-Variable.Variable3-}).*({-Variable.Variable1-}|{-Variable.Variable2-}|{-Variable.Variable3-})
Сейчас ничего не происходит, ничего не удаляет, как в регулярке задать что бы игнорировались пустые значения, и конструкция работала с другими значениями, которые не пустые?
Как вариант, проверять переменные на пустоту и в этом случае заполнять какими то данными, например абракадаброй, которая наверняка не встретится.
 

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