Обрезать строку после определенного символа

olga.armalita

Client
Joined
Apr 5, 2014
Messages
194
Reaction score
42
Points
28
Приветствую.
После получения содержимого тестового файла, и запихивания его в список, есть необходимость в каждой строке обрезать все что находиться после символа |
Пример:name:pass | sometext: somenumber
нужно превратить в name:pass.
sometext и somenumber могуть быть произвольными.

Я попытался выполнить все это дело через "обработка текста " - "trim"
выбираю переменную в которой находиться первая строка
"Где обрезать" - "конец"
"Что обрезать" - "свои символы" - "|"
И ложу в новую переменную.
Но после выполнения содержимое переменной "после" не меняется, и полностью совпадает с содержимым переменной "до"
 

rostonix

Известная личность
Joined
Dec 23, 2011
Messages
29,067
Reaction score
5,718
Points
113
Trim Это операция для строки. а не для блока текста.
Используйте экшен операции с текстом - Замена
Что ищем: \|.*
заменяем на пустоту
 
  • Thank you
Reactions: Zoloo and Brinkman

olga.armalita

Client
Joined
Apr 5, 2014
Messages
194
Reaction score
42
Points
28
Сделал при помощи регулярки
.*(?=\ \|\ )

Только все-таки хотелось бы узнать почему не сработал trim.
 
  • Thank you
Reactions: CER

olga.armalita

Client
Joined
Apr 5, 2014
Messages
194
Reaction score
42
Points
28
Trim Это операция для строки. а не для блока текста.
Не совсем понял, я же вроде к строке его и применял, или нет?
Содержимое файла в список, взять первую строку из списка, и ее trim
 

rostonix

Известная личность
Joined
Dec 23, 2011
Messages
29,067
Reaction score
5,718
Points
113
Это вообще не для вашего случая. У вас разве | в конце строки? Или в начале? И после/до ничего нет?
 

rostonix

Известная личность
Joined
Dec 23, 2011
Messages
29,067
Reaction score
5,718
Points
113
Для этой задачи нужно использовать замену
 

olga.armalita

Client
Joined
Apr 5, 2014
Messages
194
Reaction score
42
Points
28
Ок, понял, спасибо за помощь
 

Ztt7

Client
Joined
May 10, 2014
Messages
146
Reaction score
7
Points
18
Подскажите как из 99 111 8853767 сделать 99 111 885-37-67 ?
 

Ztt7

Client
Joined
May 10, 2014
Messages
146
Reaction score
7
Points
18
Как сделать, все только цифры и все цифры разные, но один формат

88 999 1112233



Требуемый результат 55 333 555-44-11
 

Radzhab

Client
Joined
May 23, 2014
Messages
1,500
Reaction score
1,268
Points
113
C#:
var number = Convert.ToInt64("88 999 1112233".Replace(" ",""));
var x = String.Format("{0:## ### ###-##-##}",number);
 

Lexicon

Client
Joined
Dec 27, 2012
Messages
1,775
Reaction score
901
Points
113
А что это у вас за IDE?
 

Radzhab

Client
Joined
May 23, 2014
Messages
1,500
Reaction score
1,268
Points
113
Online ide в гугле наберите)
 

Ztt7

Client
Joined
May 10, 2014
Messages
146
Reaction score
7
Points
18
А через "Обработка текста" "Замена" Как сделать ?
 

rostonix

Известная личность
Joined
Dec 23, 2011
Messages
29,067
Reaction score
5,718
Points
113
Никак
 

Ztt7

Client
Joined
May 10, 2014
Messages
146
Reaction score
7
Points
18
А как использовать код что выше? С # код ?
 

rostonix

Известная личность
Joined
Dec 23, 2011
Messages
29,067
Reaction score
5,718
Points
113
Да.
Только переменную туда подставить нужно

Code:
var number = Convert.ToInt64(project.Variables["Названиепеременной"].Value.Replace(" ",""));
var x = String.Format("{0:## ### ###-##-##}",number);
 

Gunjubasik

Client
Joined
May 30, 2019
Messages
3,618
Reaction score
1,400
Points
113
Помогите, пожалуйста. Использую Regex для парса и удаление лишнего с переменной.

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

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

Заранее, очень благодарен!
 
Joined
Jul 12, 2014
Messages
916
Reaction score
373
Points
63
Помогите, пожалуйста. Использую Regex для парса и удаление лишнего с переменной.

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

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

Заранее, очень благодарен!
Что первое пришло в голову
C#:
(?<=d:\\.*?\\.*?\\.*?\\.*?\\).*(?=\.mp4)
Это если путь к файлам статичен
 
  • Thank you
Reactions: Gunjubasik

BAZAg

Client
Joined
Nov 8, 2015
Messages
1,798
Reaction score
2,483
Points
113
В переменной: d:\ра\zennopost\tіsd\download\at-cm630057329.mp4
Как мне удалить все, что бы в результате получить только имя: at-cm630057329 ?
Не нужно имя файла вытаскивать регуляркой - для этого есть стандартные методы, возвращающие имя файла, имя папки, имя файла с расширением, расширение файла с пути.
Пример, который вернёт имя файла:
Code:
string path = @"d:\ра\zennopost\tіsd\download\at-cm630057329.mp4";
return Path.GetFileNameWithoutExtension(path);
Но, если уж вообще не терпится использовать что-то подобное, то можно разбить по разделителю, положить результат в массив и извлечь последний элемент.
Пример - результат идентичный, как выше:
Code:
string path = @"d:\ра\zennopost\tіsd\download\at-cm630057329.mp4";
string[] data = path.Split('\\'); 
string name = data[data.Length-1];
return name.Split('.')[0];
 
Last edited:

Zoloo

Client
Joined
Jun 19, 2020
Messages
123
Reaction score
10
Points
18
как удалить весь текст после определенного слова?
с помощью trim, замены или еще как
 

dihard

Client
Joined
Nov 8, 2019
Messages
317
Reaction score
51
Points
28
как удалить весь текст после определенного слова?
с помощью trim, замены или еще как
Кубик Обработка текста - Regex.
 

Zoloo

Client
Joined
Jun 19, 2020
Messages
123
Reaction score
10
Points
18
Кубик Обработка текста - Regex.
что там брать?
там такой настройки нет
 

dihard

Client
Joined
Nov 8, 2019
Messages
317
Reaction score
51
Points
28
что там брать?
там такой настройки нет
Там нужно писать регулярное выражение для обработки . Текст в студию
 

dihard

Client
Joined
Nov 8, 2019
Messages
317
Reaction score
51
Points
28
[\w\W]*?(?=ТВОЕСЛОВО)
как-то так писал по памяти
 
  • Thank you
Reactions: Zoloo

art22

Client
Joined
Jun 24, 2016
Messages
495
Reaction score
75
Points
28
Есть много названии в одной строке, Разделяется || друг от друга. Нужно разделить все и писать все с новой строки удаляя || в списке как это сделать?
 

samsonnn

Client
Joined
Jun 2, 2015
Messages
1,857
Reaction score
1,580
Points
113
Есть много названии в одной строке, Разделяется || друг от друга. Нужно разделить все и писать все с новой строки удаляя || в списке как это сделать?


 
  • Thank you
Reactions: art22

art22

Client
Joined
Jun 24, 2016
Messages
495
Reaction score
75
Points
28
samsonnn. а в список как его добавить чтобы по одной строке было? при добавлении в список получается одна строка(
 

Attachments

samsonnn

Client
Joined
Jun 2, 2015
Messages
1,857
Reaction score
1,580
Points
113
samsonnn. а в список как его добавить чтобы по одной строке было? при добавлении в список получается одна строка(
 
  • Thank you
Reactions: art22

art22

Client
Joined
Jun 24, 2016
Messages
495
Reaction score
75
Points
28
samsonnn. когда получаем результат в переменное, как можно обратно превратить в Петя||Сташ... сделать в одну строку с разделением? попробовал ентер заменить на \|\| не получился
 

samsonnn

Client
Joined
Jun 2, 2015
Messages
1,857
Reaction score
1,580
Points
113
samsonnn. когда получаем результат в переменное, как можно обратно превратить в Петя||Сташ... сделать в одну строку с разделением? попробовал ентер заменить на \|\| не получился


 
  • Thank you
Reactions: art22

Users Who Are Viewing This Thread (Total: 1, Members: 0, Guests: 1)