Хочешь сказать за 1 присест, можно в две переменных спарсить данные?Групповая регулярка. Номер совпадения выбрать 0. 1 - в первую переменную, 2 - во вторуюКод:([^:]+):([^:]+)
хочуХочешь сказать за 1 присест, можно в две переменных спарсить данные?
Можешь скрин показать с примером?
можешь, если правильно регулярку составишь. Нужно понимать, что это не направление обычных совпадений, а направление групп совпаденийМожешь скрин показать с примером?
Я могу так хоть 20 совпадений все по очереди в переменные загнать?
0 савпадение - номер совпадния по группе. 1,2 и т.д. - номер совпадения внутри группы. Есть и нулевое, но в нём будет весь текст, найденный ругялркой, а начиная с 1го уже будут групповые значенияМеня лично смущает выпадающее меню "Номер совпадения" и внизу мы выбираем "Номер совпадения", так что именно делает первое меню?
Очень все запутанно =)0 савпадение - номер совпадния по группе. 1,2 и т.д. - номер совпадения внутри группы. Есть и нулевое, но в нём будет весь текст, найденный ругялркой, а начиная с 1го уже будут групповые значения
есть текстОчень все запутанно =)
(\d+):(\d+)
Вот такой регуляркой иногда пользуюсь:Есть данные
423523523:3245345634
надо до : число внести в переменную 1, а после : в переменную 2, как это сделать через регулярку?
((?<=(^|:|;)).*?(?=(:|;|$|\r\n)))
Ну так скажи. )Столько сообщений и никто не сказал про сплит (((((
Скажите пожалуйста, а как в таком случае быть?Вот такой регуляркой иногда пользуюсь:Это универсальная регулярка для двоеточия и точки-с-запятой в роли разделителя.Код:((?<=(^|:|;)).*?(?=(:|;|$|\r\n)))
Работает через два кубика Обработка текста, в первом кубике - 0-ое совпадение, во втором 1-ое..
Достоинство такого способа, что можно разбирать строки с бо'льшим, чем два, кол-вом данных между разделителями.
Еще нравится с таблицей вариант, где разбор по переменным, тоже пользуюсь..
Можно записать в список и брать в цикле, по мере необходимости.Скажите пожалуйста, а как в таком случае быть?
У меня в пемеренной лежит вот такой текст -
То есть в строчку прописаны 5 ссылок на картинки, разделены они ";"C:\folder\img\1.jpg;C:\folder\img\01017(2).jpg;C:\folder\img\03-lovlya-yazya-na-udochku.jpg;C:\folder\img\0626-fish-dlya-rybalki.jpg;C:\folder\img\0627-dlya-rybalki.jpg
Как сделать регулярку, что бы из этих ссылок вырезались вот эти данные И сразу же перекидывались в 5 разных переменных? собственно сама регулярка то вот - (?<=folder).*?jpg
мне эти 5 строк, надо раскидать в 5 переменных так же как тут у @doc, но у меня только одно совпадение записывается =(
Циклом сложно, нужно именно в разные переменные записывать что бы потом отображать все эти 50 картинок в документе. Есть список где 50 ссылок на картинки, и надо ссылки (предварительно регуляркой обрезав до \img\name.jpg) на эти картинки записать в 50 разных переменных, циклом по моему не получиться в разные переменные записыватьМожно записать в список и брать в цикле, по мере необходимости.
Так ли уж необходимо их все в разные переменные записывать?
var x = project.Variables["str"].Value.Split(':');
project.Variables["res1"].Value = x[0];
project.Variables["res2"].Value = x[1];
ну и соответственно если в переменной aaa:bbb:ccc то и в три переменные все запишется? а как добавить регулярку к этому коду, что бы регуляркой из xxxxx:yyyyy:ssss определенный кусок вырезался и так жев переменной str должна быть строка вида xxxxxx:yyyyyyyC#:var x = project.Variables["str"].Value.Split(':'); project.Variables["res1"].Value = x[0]; project.Variables["res2"].Value = x[1];
так же должно быть 2 переменные res1 и res2 ... в первой окажется xxxxxxx, а во второй yyyyyy
если добавитьну и соответственно если в переменной aaa:bbb:ccc то и в три переменные все запишется?
project.Variables["res3"].Value = x[2];
в зависимости от необходимого куска может быть разная регуляркаа как добавить регулярку к этому коду, что бы регуляркой из xxxxx:yyyyy:ssss определенный кусок вырезался и так же
в переменные записывался?
как вариант вотСогласен, получается лес лесной. Самый простой вариант это в два кубика решить эту задачу, первый - сишарп, регуляркой находит все значения и раскидывает их по переменным (в каждом списке у меня строго определенное количество ссылок, по этому я точно заранее знаю сколько всего будет регуляркой найдено результатов и соответственно сколько необходимо переменных) , вторым кубиком очищаем из ссылки все ненужное. Но вот я не знаю как код накидать
int count = project.Variables["имя_переменной"].Value.Split(':').Length;
if(count > 0)
for (int i = 0; i < count; i++)
project.Variables["var" + (i + 1)].Value = Regex.Match(project.Variables["имя_переменной"].Value.Split(':')[i], @"(?<=folder).*?jpg").Value;
Потому что если как у Дока, то регулярка должна всю строку находить а не нужный участок. А уже то что в круглых скобках регулярки будет находить нужные фрагменты:Скажите пожалуйста, а как в таком случае быть?
У меня в пемеренной лежит вот такой текст -
То есть в строчку прописаны 5 ссылок на картинки, разделены они ";"C:\folder\img\1.jpg;C:\folder\img\01017(2).jpg;C:\folder\img\03-lovlya-yazya-na-udochku.jpg;C:\folder\img\0626-fish-dlya-rybalki.jpg;C:\folder\img\0627-dlya-rybalki.jpg
Как сделать регулярку, что бы из этих ссылок вырезались вот эти данные И сразу же перекидывались в 5 разных переменных? собственно сама регулярка то вот - (?<=folder).*?jpg
мне эти 5 строк, надо раскидать в 5 переменных так же как тут у @doc, но у меня только одно совпадение записывается =(
[^;]+\\folder([^;]+\.jpg);[^;]+\\folder([^;]+\.jpg);[^;]+\\folder([^;]+\.jpg);[^;]+\\folder([^;]+\.jpg);[^;]+\\folder([^;]+\.jpg)
как в одну регулярку добавить 2 расширения jpg и jpeg?
(?<=Doorway).*?(jpg|jpeg)
Огненный огонь! Спасибо, а я пробовал в скобки ставить и через ; и ,Регулярка:(?<=Doorway).*?(jpg|jpeg)
Вертикальная черта "|" означает логическое "или".Огненный огонь! Спасибо, а я пробовал в скобки ставить и через ; и ,
а если поставить & что что оно по идее должно найти?Вертикальная черта "|" означает логическое "или".
И первый вариант и второй. То есть по сути ничего не поменяется от первоначального результата.а если поставить & что что оно по идее должно найти?