Рег. выражение

StalkerClasses

Новичок
Есть строка: @Arg:<Test->Test>
Есть рег. выражение: /[@]{1}(.*?):\<(.*?)\>/is
На выходе должна быть строка Test->Test, а она обрезается.
Как составить рег. выражение что бы получить значение между кавычками <>?

Символ конца строки не подходит.
Для вставки: https://uvsoftium.ru/php/regexp.php

[@]{1}(.*?):\<(.*?)\>
@Arg:<Test->Test>
 

ksnk

прохожий
Осталось только понять, должна ли регулярка отлавливать такое:
xxx<->
yyy<------->
zzz<oppa->->->oppa>
 

AnrDaemon

Продвинутый новичок
Есть строка: @Arg:<Test->Test>
Есть рег. выражение: /[@]{1}(.*?):\<(.*?)\>/is
На выходе должна быть строка Test->Test, а она обрезается.
Как составить рег. выражение что бы получить значение между кавычками <>?

Символ конца строки не подходит.
Для вставки: https://uvsoftium.ru/php/regexp.php

[@]{1}(.*?):\<(.*?)\>
@Arg:<Test->Test>
- бред собачий.
- ещё больший бред.

На выходе должна быть строка Test->Test, а она обрезается.
- начни с токенизации строки. ЧТО ИМЕННО у тебя в строке написано?
I.e.,
Осталось только понять, должна ли регулярка отлавливать такое:
xxx<->
yyy<------->
zzz<oppa->->->oppa>
 

ksnk

прохожий
в регулярке даже на первый взгляд 5 лишних символов - собаку можно было бы написать без оформления.
Эта регулярка из строки
`@xxx:<111->222> @yyy:<333->444>`
в названии выкинет вот такое `xxx:<111->222> @yyy`. Так и должно быть ?
Для начала следует для себя понять зачем нужна регулярка в этом месте. Какие данные она должна выковыривать и насколько эти данные могут быть разными.
Если одна синтаксическая конструкция на строку и это абсолютный физический закон, то да, в твоем случае это сработает. Если ты выковыриваешь изюм из полотна текста, написанного юзером, то нужен, хоть минимальный, контроль ошибок
 
Сверху