Получить текст - Как отделить текст от лишней информации ?
-
@Fox 3 5 77 32 dserjowe, вот из этого текста нужно достать только цифры, но с помощью \d+ или \d*, а также (\d+) \s и форма (\d+){6} отдают число, которое нужно, но только через запятую каждое и с пробелами. Пример :3, 5, 7, 7, 3, 2, а нужно целое число 357732.
-
Выполнить код
[[ТОЛЬКОЦИФРЫ]]=[[ТЕКСТ]].replace(/[^\d]+/g, "");
удалит всё, кроме цифр.
@freeliman в красненькой табличке вся самая важная инфа по регуляркам
http://community.bablosoft.com/topic/3436/проблема-с-регулярками@Bonifazzziy регулярка находит не одно, а несколько совпадений, поэтому список их через запятую (хотя вернее сказать, что это массив найденного).
Поставь notepad++ и в нём в режиме замены текста Ctrl+F тестируй любые регулярки. Увидишь всё глазками.
-
Устал воевать с регулярками.
Есть список мыл вида:[email protected]_Name [email protected]_Name [email protected]_Name
надо убрать с них "_Name"
в конструкторе получилось так:([\s\S]+?)_Name+?
в басе не пашет. подскажите как правильно?
-
@edik23, если там везде так именно _Name, то просто замену текстом сделай.
Инструменты>Заменить строку
Регулярки нужны, когда много вариантов текста с каким-то общим признаком.
-
@edik23 Аналогично Ватсон ))
Выполнить код[[EMAIL]]=[[СТРОКА]].replace(/_Name/g, "");
Естественно в цикле пробегаясь по строкам списка...
-
ни так ни так не катит.
Список выдергивается из кода сайта xpath-ом
Такое чувство, что регулярка просто не справляется со списком.
сейчас выдеонул из списка первый элемент и регуляркой по нему. Спокойно все сработало. В общем не дергает из списка. Не хотелось бы городить циклы. Раньше нормально дергал из списка. Хотелось бы вернуть
-
@Xstroy спасибо большое. Но немного не понятно, что означает [[ТОЛЬКОЦИФРЫ]]=[[ТЕКСТ]] ?
-
@Bonifazzziy, [[имя переменной с результатом]]=[[имя переменной с исходным текстом]]
-
@edik23, ошибку выдает? Если нет, то не в этом дело.
-
@Antonio просто пустоту выдаёт...
-
@edik23 регулярка не работает со списком, а только с одной записью.
Поэтому, как было сказано выше, нужно создать цикл (допустим for) и обрабатывать каждое значение списка (ты сам сказал, что так всё работает, ведь так и должно).В php есть str_replace которая делает замену во всём массиве, но здесь так не катит.
-
@Antonio вот результат текста [20:39:28] Поток №1 : 3 5 6 5 2 I nrnusnsxon
А вот, что выдаёт при регулярке \d+ [20:40:15] Поток №1 : 3,5,6,5,2
-
@Bonifazzziy вот это работает
[[ТОЛЬКОЦИФРЫ]]=[[ТЕКСТ]].replace(/[^\d]+/g, "");
замена всего, что не цифра на пустоту...................
-
@Xstroy said in Получить текст - Как отделить текст от лишней информации ?:
замена всего, что не цифра на пустоту.
А где сохраняется результат после выполнить код? Как вывести в лог результат ?
-
@Bonifazzziy пора бы уже знать, что всё что пишется
БОЛЬШИМИ ЛАТИНСКИМИ БУКВАМИ в двойных квадратных скобках - это переменные.
Если их не было, они создаются.
Я их обозвал для примера, чтобы было понятно, что, где.
-
@Xstroy спасибо, простите, я только пытаюсь что-то делать...Всё заработало, спасибо Вам большое и простите за глупые вопросы.
-
@Xstroy said in Получить текст - Как отделить текст от лишней информации ?:
В php есть str_replace которая делает замену во всём массиве, но здесь так не катит.
Можно перебрать массив функцией:
[[NEW_LIST]] = [[SCAN_RESULT_LIST]].map(function(el){ return el.replace(/[^\d]+/g, ""); });
в выполнить код.
-
@Fox добавь сюда
http://community.bablosoft.com/topic/3521/лайфхаки-bas/
многим пригодится.
-
По случаю задам вопрос. Как работает функция поиск по строке, когда в ней используешь рег. выражение? Просто в экшенах для рег выражений мое выражение работает отлично, пробовал применить его в данной функции результат пустая строка.
-
Реально для такого текста регулярку придумать?
"name": "secure", "path": "/", "secure": "1", "value": "Cd2d21tt9Gddsfiju83f03cnbMJPlKp" "name": "csrftoken", "path": "/", "secure": "1", "value": "CVy1tt9G1XvgLQQjnfNCcvyEnbMJPlKp" } ]
Чтобы только последнюю строку "CVy1tt9G1XvgLQQjnfNCcvyEnbMJPlKp" парсил?