Как из тхт файла в формате [email protected]:password взять отдельно логин и отдельно пароль?

Kababchik

Новичок
Регистрация
12.03.2021
Сообщения
16
Благодарностей
0
Баллы
1
Как из тхт файла в формате [email protected]:password взять отдельно логин и отдельно пароль?
 

volody00

Client
Регистрация
06.09.2016
Сообщения
793
Благодарностей
812
Баллы
93

N0!R

Client
Регистрация
13.03.2021
Сообщения
5
Благодарностей
0
Баллы
1
почему то у меня не срабатывает разделитель
 

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63

N0!R

Client
Регистрация
13.03.2021
Сообщения
5
Благодарностей
0
Баллы
1
да все верно: получаю строку и списка логин пароль вида login:password
после пытаюсь разделить и положить в переменные (login_r) (password_r) разделитель (:-)
все отрабатывает без ошибок но переменные (login_r) (password_r)
 
Последнее редактирование:

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 442
Благодарностей
1 287
Баллы
113
да все верно: получаю строку и списка логин пароль вида login:password
после пытаюсь разделить и положить в переменные (login_r) (password_r) разделитель (:-)
все отрабатывает без ошибок но переменные (login_r) (password_r)
Держите пример
 

Вложения

  • Спасибо
Реакции: N0!R

N0!R

Client
Регистрация
13.03.2021
Сообщения
5
Благодарностей
0
Баллы
1
огромное спасибо пример посмотрю. решил проблему на C#
вот таким образом:
var login = project.Variables["login_pass"].Value.Split(':');
project.Variables["login_r"].Value = login[0];
project.Variables["password_r"].Value = login[1];
 

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63
Пример через регулярные
 

Вложения

  • Спасибо
Реакции: Mikhail B. и N0!R

N0!R

Client
Регистрация
13.03.2021
Сообщения
5
Благодарностей
0
Баллы
1

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 442
Благодарностей
1 287
Баллы
113

N0!R

Client
Регистрация
13.03.2021
Сообщения
5
Благодарностей
0
Баллы
1
Нужно быть извергом, что бы разделять логин и пас регулярками, когда есть сплит кубик и c#.:D
ну кубик не отработал 8-)почему не знаю, но C# все завелось отлично.
Мне как только начинающему своей путь все примеры важны.
 

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63
Нужно быть извергом, что бы разделять логин и пас регулярками
это с одной стороны, с другой накладные не на много выше и не указана версия постера, кубик на сколько помню не во всех версиях есть, хотя могу ошибаться

но C# все завелось
если есть неплохие знания в c#, то стоит попробовать интеграцию с visual studio
 
  • Спасибо
Реакции: orka13

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63

orka13

Client
Регистрация
07.05.2015
Сообщения
2 164
Благодарностей
2 164
Баллы
113
C# + Регулярка + Split и по феншую:
C#:
//регулярка для поиска всевозможных разделителей, лишнее уберите
// (вертикальня черта, табуляция, двоеточие, точка с запятой, запятая):
string pattern = @"[|\t:;,]";
//строка в которой будем искать
string multikey = string.Empty;
//задаем значение строки прямо в коде:
multikey = @"login:pass|cookie";
//либо через переменную задаем (удалите ненужный вариант):
multikey = project.Variables["Zenno_Peremennaya"].Value;

string[] result = Regex.Split(multikey, pattern).ToArray();
// выводим в лог количество найденных ячеек
project.SendInfoToLog(result.Count().ToString(), false);

//Сначала лучше обнулим наши переменные от старых значений:
project.Variables["Login"].Value = string.Empty;
project.Variables["Pass"].Value = string.Empty;
project.Variables["Cookie"].Value = string.Empty;

//Пробуем заполнить наши переменные ячейками (нумерация с НУЛЯ!):
try {
project.Variables["Login"].Value = result[0];
project.Variables["Pass"].Value = result[1];
project.Variables["Cookie"].Value = result[2];
}
catch {
    throw new Exception(" Ахтунг! Вы скорее-всего задали переменных или номеров ячеек больше чем количество ячеек в строке! ");
}
 
  • Спасибо
Реакции: discus, N0!R и specialist

Kababchik

Новичок
Регистрация
12.03.2021
Сообщения
16
Благодарностей
0
Баллы
1
Такой костыль с элементарной вещью(
Не удобна для меня зенка, хз(
 

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63
Такой костыль с элементарной вещью(
c# или javascript используйте и все удобно или обновитесь до 7.2 и выше, появилась полноценная интеграция со студией.

Нет тут костылей, есть решения одной задачи,

могу еще менее явное решение привести, как посимвольный перебор в поисках двоеточия.

Ещё менее явное - обращение через get запрос к скрипту на сервере.

Задачу решает за поставленное время - решает и работает без проблем, значит не костыль.

Последнее решение от orka13 по всем правилам, покрытия тестами только не хватает.

Или считаете, что питоний синтаксис string.slpit(":")[0] или php $array = explode(':', $string);
намного короче будет если ошибки как положено обрабатывать?
 
  • Спасибо
Реакции: orka13

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