use strict;
my $str = 'За тази седмица прочетете
Римляни 5:12-21,13 1 Коринтяни 31:12-17; 1 Коринтяни 12:14-26; Ефесяни 6:11-17; 1 Коринтяни 15:12-18;1;
Адам и Исус
изход 1:1-2,3,4-0;1:1,2-3;3;
Неделя - 28 февруари
Въпреки че апостол Павел е известен със своето ясно изложение на евангелието, неговото обяснение на великата борба също е изключително ценно. В центъра на поученията му за благата вест са концентрирани следните основни идеи: ние сме „оправдани чрез вяра“ в Исус (Римляни 5:1), имаме пряк достъп до Бога и се „радваме поради надеждата“ (стих 2); а изпитанията вече не ни притесняват (стихове 3-5). Освен това ни дава обещанието, че „когато още бяхме грешници, Христос умря за нас“ (стих 8) и сега сме „спасени“ чрез живота и смъртта на Христос за нас. Освен това сме пощадени от Божия последен съд над греха (стихове 9, 10), а се радваме, че сме примирени с Него (стих 11).
Прочетете Римляни 5:12-21. Как тук ни е разкрита великата борба?
Матей 1:1; 2:3-6,17; 1chro 2:2 + rev 1:1; 2:3-6,17; +exod';
my $regex = qr/((?:[1234]\s?)?[a-zа-я]+)(\s?\d+(?::(?:\d+[—–-]\d+|\d+)(?:,\d+[—–-]\d+|,\d+)*(?:;\s?\d+(?::(?:\d+[—–-]\d+|\d+)(?:,\d+[—–-]\d+|,\d+)*|;))*)?)/ip;
if ( $str =~ /$regex/g ) {
print "Whole match is ${^MATCH} and its start/end positions can be obtained via \$-[0] and \$+[0]\n";
# print "Capture Group 1 is $1 and its start/end positions can be obtained via \$-[1] and \$+[1]\n";
# print "Capture Group 2 is $2 ... and so on\n";
}
# ${^POSTMATCH} and ${^PREMATCH} are also available with the use of '/p'
# Named capture groups can be called via $+{name}
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Perl, please visit: http://perldoc.perl.org/perlre.html