Regular Expressions
2 отговора
260 прегледа
Regular Expressions
Здравейте. Трябва ми регулярен израз, който матчва следното:
<lf>%<lf>
(text to be matched)
<lf>%<lf>
Тябва да се върне текста между делимитерите. Не е толкова просто, колкото
изглежда на пръв поглед, защото е възможно да има % вътре в самия текст, но
те не се броят за делимитери освен ако не са заобиколени от нови редове.
За текста между делимитерите е лесно - групира се и готово. Обаче ми е
трудно да си построя патерна...
\n%\n(?<група>и тук трябва експрешън да матчва всичко без "<lf>%<lf>")\n%\n
[^%] не върши работа!
Мерси на тези, които откликнат :)
<lf>%<lf>
(text to be matched)
<lf>%<lf>
Тябва да се върне текста между делимитерите. Не е толкова просто, колкото
изглежда на пръв поглед, защото е възможно да има % вътре в самия текст, но
те не се броят за делимитери освен ако не са заобиколени от нови редове.
За текста между делимитерите е лесно - групира се и готово. Обаче ми е
трудно да си построя патерна...
\n%\n(?<група>и тук трябва експрешън да матчва всичко без "<lf>%<lf>")\n%\n
[^%] не върши работа!
Мерси на тези, които откликнат :)
Re: Regular Expressions
Колко пъти можеш да имаш това
<lf>%<lf>
(text to be matched)
<lf>%<lf>
в текста, в който търсиш? Мисълта ми е само на едно място ли го има или искаш да върнеш всички подобни pattern-и в текста. Ако го има само веднъж е това трябва да свърши работа - \n%\n(.*)\n%\n
Поне в asdasdasd\n%\nas%%%dasd\n%\nasdasdasd връща as%%%dasd, нищо че има % вътре.
Eeeeeeeeeeeeeeeaaaaaaasy rider
<lf>%<lf>
(text to be matched)
<lf>%<lf>
в текста, в който търсиш? Мисълта ми е само на едно място ли го има или искаш да върнеш всички подобни pattern-и в текста. Ако го има само веднъж е това трябва да свърши работа - \n%\n(.*)\n%\n
Поне в asdasdasd\n%\nas%%%dasd\n%\nasdasdasd връща as%%%dasd, нищо че има % вътре.
Eeeeeeeeeeeeeeeaaaaaaasy rider
Re: Regular Expressions
Merci za otgovora. Ne, ne e samo vednuj. Eto primeren tekst:
line 1
%
%line 2% bla
%
line 3%
%
alabala
Testvai s tozi tekst... Ideiata e da se matchnat redowete bez delimiterite. :)
Uspeh!
line 1
%
%line 2% bla
%
line 3%
%
alabala
Testvai s tozi tekst... Ideiata e da se matchnat redowete bez delimiterite. :)
Uspeh!