Kibor |
Отправлено: 20 Февраля, 2022 - 10:46:43
|
Эксперт
Покинул форум
Сообщений всего: 8218
Дата рег-ции: Март 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); |
|
|
Zireael |
Отправлено: 05 Марта, 2022 - 10:10:47
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: Как в этой строке data-original='(для просмотра ссылки Вам необходимо авторизоваться) заменить выделенную часть?
CODE:string s = "data-original=^'https:/^/site.info/b563-336430636638/wallet.png";
regexreplace(1, #s, s, "(?<==).+(?=/)", "zzz"); // заменить текст между = и /
messagebox(s); |
|
|
Zireael |
Отправлено: 07 Апреля, 2022 - 13:29:28
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: считать количество трех 00:00 между Футбол. Статистика. И ЖК Бавария?
CODE:string rn = "^r^n"; // перенос строки
string text = "Футбол. Статистика."+rn+
"00:00"+rn+
"00:00"+rn+
"Футбол. Матч"+rn+
"00:00"+rn+
"00:00"+rn+
"Футбол. Статистика."+rn+
"00:00"+rn+
"00:00"+rn+
"00:00 ЖК Бавария";
messagebox(text);
string result;
if(regexsearch(1, #result, text, "(?<=Футбол. Статистика.^r^n)(00:00[^r^n ]+){3}(?=ЖК Бавария)"))messagebox(result);
else messagebox("Не найдено"); |
|
|
Zireael |
Отправлено: 16 Июля, 2022 - 13:31:32
|
Эксперт
Покинул форум
Сообщений всего: 4465
Дата рег-ции: Нояб. 2017
Репутация: 585
|
Цитата: Как из текста
string text = "...4.55.4.." получить первые две цифры ? (бывает перенос строки)
CODE:string text = "...4.^r^n.55.4..";
messagebox(text);
regexreplace(-1, #text, text, "[^\d]", ""); // удалить из строки всё кроме цифр
if(regexsearch(1, #text, text, "\d{2}")) // найти 2 цифры
{
messagebox(text);
}
else messagebox("Не найдено"); |
|
|
|