Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

 Страниц (25): В начало « 16 17 18 19 [20] 21 22 23 24 » В конец    

> Описание: Поиск и замена текста по шаблонам регулярных выражений
konctantin777
Отправлено: 06 Декабря, 2021 - 18:51:55
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 1152
Дата рег-ции: Окт. 2017  
Откуда: Архангельск
Репутация: 6




Спасибо, сохранил себе шаблон )
Подскажите как убрать перевод строки ? При распознавании текста, иногда 2 переноса каретки...
 
 Top
Zireael
Отправлено: 06 Декабря, 2021 - 19:16:42
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4461
Дата рег-ции: Нояб. 2017  
Репутация: 585




 Цитата:
Подскажите как убрать перевод строки ? При распознавании текста, иногда 2 переноса каретки...

CODE:
string Text = "qwe^r^n^r^nrty^r^n^r^nasd";
messagebox(Text);

regexreplace(-1, #Text, Text, "(^r^n)+", "^r^n");
messagebox(Text);
 
 Top
neba2101
Отправлено: 19 Января, 2022 - 22:16:39
Post Id



Пользователь
Мастер


Покинул форум
Сообщений всего: 154
Дата рег-ции: Февр. 2017  
Репутация: 4




В буфер обмена помещаем:

fq111wt
ee222zr

запускаем
CODE:
string P;
string T;
readclipboard (T);
messagebox (T);
//string R="(?<=q)(.*)(?=w)";// так находит 111
string R="(?<=f)(.*)(?=z)";//а так не находит q111wtee222 (как найти?)
if (regexsearch(1, #P, T, R)==1)messagebox(P);
 
 Top
Zireael
Отправлено: 20 Января, 2022 - 00:44:52
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4461
Дата рег-ции: Нояб. 2017  
Репутация: 585




 Цитата:
как найти?

Что найти?
 
 Top
neba2101
Отправлено: 20 Января, 2022 - 10:05:33
Post Id



Пользователь
Мастер


Покинул форум
Сообщений всего: 154
Дата рег-ции: Февр. 2017  
Репутация: 4




 Zireael пишет:
Что найти?


В буфер обмена помещаем:

333333
333333
fq111wt
текст
текст
ee222zr
444444
555555

Мне нужно найти из буфера весь текст, строка которого начинается на "fq111wt" и заканчивается "ee222zr" включительно. Результат поиска должен быть:

fq111wt
текст
текст
ee222zr

Неверно в прошлом посте поставил вопрос.

(Отредактировано автором: 20 Января, 2022 - 10:07:10)

 
 Top
Zireael
Отправлено: 20 Января, 2022 - 10:16:11
Post Id



Пользователь
Эксперт


Покинул форум
Сообщений всего: 4461
Дата рег-ции: Нояб. 2017  
Репутация: 585




 Цитата:
Мне нужно найти из буфера весь текст, строка которого начинается на "fq111wt" и заканчивается "ee222zr" включительно.

CODE:
string Text, Result;
readclipboard (Text);
messagebox (Text);

if(regexsearch(1, #Result, Text, "fq111wt.+ee222zr", SINGLELINE ))messagebox(Result);
else messagebox("Не найдено");
 
 Top
Denci
Отправлено: 19 Февраля, 2022 - 14:46:46
Post Id



Пользователь
Прохожий


Покинул форум
Сообщений всего: 15
Дата рег-ции: Март 2015  
Репутация: 0




Подскажите, пожалуйста, как выполнить такую задачу. Есть слово "Иван", нужно букву 'И' заменить на 'I', 'в' на 'v', 'а' на 'a', 'н' на 'n' (т.е. каждая русская буква заменяется на соответствующую английскую). В итоге должно получиться "Ivan". Заранее спасибо. Чёт не въеду в эти регулярки. Может где на форуме уже готовый пример есть такого пребразования слов с учетом регистра

(Отредактировано автором: 19 Февраля, 2022 - 14:48:40)

 
 Top
Kibor
Отправлено: 19 Февраля, 2022 - 15:38:58
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




CODE:
string rus[74]={"Ї", "ї", "Ж", "ж", "Ц", "ц", "Ч", "ч", "Щ", "щ", "Ш", "ш", "ь", "Ь", "Ю", "ю", "Я", "я", "Ё", "ё", "Ы", "ы", "Ъ", "ъ", "А", "а", "Б", "б", "В", "в", "Г", "г", "Ґ", "ґ", "Д", "д", "Е", "е", "Є", "є", "З", "з", "И", "и", "І", "і", "Й", "й", "К", "к", "Л", "л", "М", "м", "Н", "н", "О", "о", "П", "п", "Р", "р", "С", "с", "Т", "т", "У", "у", "Ф", "ф", "Х", "х", "Э", "э"};
string eng[74]={"Yi", "yi", "Zh", "zh", "Ts", "ts", "Сh", "ch", "Shh", "shh", "Sh", "sh", "^'", "^'", "Yu", "yu","Ya", "ya", "Yo", "yo", "Y", "y", "", "", "A", "a", "B", "b", "V", "v", "G", "g", "G", "g", "D", "d", "E", "e", "E", "E", "Z", "z", "I", "i", "I", "I", "J", "j", "K", "k", "L", "l", "M", "m", "N", "n", "O", "o", "P", "p", "R", "r", "S", "s", "T", "t", "U", "u", "F", "f", "H", "h", "E", "e"};


string S="Иван Иваныч Иванов сидит дома без штанов. Вышел зайка на крыльцо почесать своё ухО. Хвать за ухо, нет ухА, так и Ёп... с крыльца.";
for (int n=0; n<74; n++)
{
regexreplace(-1, #S, S, rus[n], eng[n]);
}
messagebox (S);
//Преобразуем назад.
for (n=0; n<74; n++)
{
if (eng[n]!="")regexreplace(-1, #S, S, eng[n], rus[n]);
}
messagebox (S);
 
 Top
Budni
Отправлено: 19 Февраля, 2022 - 22:12:04
Post Id



Пользователь
Специалист


Покинул форум
Сообщений всего: 419
Дата рег-ции: Март 2018  
Репутация: 2




Kibor , А на оборот можно из транслита в кирилицу?
 
 Top
Kibor
Отправлено: 19 Февраля, 2022 - 22:20:26
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 Budni пишет:
А на оборот можно из транслита в кирилицу?


Правильная расстановка массива для правильного двухстороннего преобразования.
Отредактировал и первый скрипт..

CODE:
string rus[74]={"Ї", "ї", "Ж", "ж", "Ц", "ц", "Ч", "ч", "Щ", "щ", "Ш", "ш", "ь", "Ь", "Ю", "ю", "Я", "я", "Ё", "ё", "Ы", "ы", "Ъ", "ъ", "А", "а", "Б", "б", "В", "в", "Г", "г", "Ґ", "ґ", "Д", "д", "Е", "е", "Є", "є", "З", "з", "И", "и", "І", "і", "Й", "й", "К", "к", "Л", "л", "М", "м", "Н", "н", "О", "о", "П", "п", "Р", "р", "С", "с", "Т", "т", "У", "у", "Ф", "ф", "Х", "х", "Э", "э"};
string eng[74]={"Yi", "yi", "Zh", "zh", "Ts", "ts", "Сh", "ch", "Shh", "shh", "Sh", "sh", "^'", "^'", "Yu", "yu","Ya", "ya", "Yo", "yo", "Y", "y", "", "", "A", "a", "B", "b", "V", "v", "G", "g", "G", "g", "D", "d", "E", "e", "E", "E", "Z", "z", "I", "i", "I", "I", "J", "j", "K", "k", "L", "l", "M", "m", "N", "n", "O", "o", "P", "p", "R", "r", "S", "s", "T", "t", "U", "u", "F", "f", "H", "h", "E", "e"};


string S="Иван Иваныч Иванов сидит дома без штанов. Вышел зайка на крыльцо почесать своё ухО. Хвать за ухо, нет ухА, так и Ёп... с крыльца.";
for (int n=0; n<74; n++)
{
regexreplace(-1, #S, S, rus[n], eng[n]);
}
messagebox (S);
//Преобразуем назад.
for (n=0; n<74; n++)
{
if (eng[n]!="")regexreplace(-1, #S, S, eng[n], rus[n]);
}
messagebox (S);
 
 Top
Страниц (25): В начало « 16 17 18 19 [20] 21 22 23 24 » В конец
Сейчас эту тему просматривают: 7 (гостей: 7, зарегистрированных: 0)
« О программе Кибор »


Все гости форума могут просматривать этот раздел.
Только администраторы и модераторы могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by