@Q_Q Я использую образ Docker с Podman (альтернатива Docker), и, похоже, есть какая-то ошибка в том, что Podman Desktop на Windows принимает соединения только с "localhost" (или с "::1" для IPv6), но не с "127.0.0.1" при использовании аргумента "net=host".
Но теперь я перенастроил контейнер и использую режим "net=bridge".
Таким образом, образ контейнера, обеспечивающий прокси, по-прежнему работает, и к нему можно получить доступ через "127.0.0.1", а значит, он также работает в BAS.
Как научить BAS переделывать строку
-
Всем добрый день
BAS получает текст размером 16 символов с цифрами и буквами и каждые 4 символа должен быть тире и все буквы должны быть большими но может произойти ситуация когда: Буквы будут маленькими или место тире будет пробел или вообще весь текст будет без тире и разделений что тогда делать?
Пример
Мне нужен типа такой текст 9M9J-WDRB-HQ39-HQP1
Но может появится или такой 9M9J WDRB HQ39 HQP1
Или такой 9M9JWDRBHQ39HQP1
Или такой 9m9j-wdrb-hq39-hqp1
Ну или комбинация этих "ошибок"
(это только пример)Что вы посоветуете мне сделать?
-
@nikalasss Использовать регулярное выражение
-
@nikalasss Вот исчерпывающая статья в вики https://ru.wikipedia.org/wiki/Регулярные_выражения Какой результат нужен на выходе?
-
@nikalasss said in Как научить BAS переделывать строку:
9m9j-wdrb-hq39-hqp1
В выполнить код используйте этот код ( на кубиках писать мне лень)
var str='9m9j-wdrb-hq39-hqp1'; //Строка в которой ищем var regEx=/(?:^|\s)(\S{4,4})[\s-]?(\S{4,4})[\s-]?(\S{4,4})[\s-]?(\S{4,4})(?:\s|$)/; var text=str.match(regEx); if(text.length==5){ text=text.slice(1).join('-').toUpperCase(); log(text) }else{ log('Строка '+str+' не подходит под регулярное выражение') }; -
@nikalasss В выполнить код копируете все это.
Ваша строка [[YOUR_STRING]] - ставите свою переменную из БАСа.var str=[[YOUR_STRING]]; //Строка в которой ищем var regEx=/(?:^|\s)(\S{4,4})[\s-]?(\S{4,4})[\s-]?(\S{4,4})[\s-]?(\S{4,4})(?:\s|$)/; var text=str.match(regEx); if(text && text.length==5){ [[YOUR_STRING]]=text.slice(1).join('-').toUpperCase(); log([[YOUR_STRING]]) }else{ log('Строка '+str+' не подходит под регулярное выражение') };Кстати это не Java, а JavaScript :)
-
@nikalasss Подредактировал код, а вообще видимо строка не подошла под регулярку.
-
@denis_krsk
по частям собрать искомое убирая по одной ошибки
через редактор переменных заменить " " на "-"
уcтановить переменную [[YOUR_STRING]].touppercase
если в [[YOUR_STRING]]НЕ найден "-"
то ммм...разобрать регуляркой по 4 в список
/d/d/d/d кажеца, че там буква, забыл
форич этот список
установить форич дату в [[форич_дата]]-
добавить ее в другой список
после цикла список сложить в строку
в конце готовой переменной будет лишний дефис.
регулярки можно запускать с конца, гугль в помощь
или удалить последний символ яваскриптом.
на нем же лучше все и написать, ради компактификации