Forum Webscript.Ru
		Программирование => Регулярные выражения => Тема начата: abra от 22 Декабря 2008, 19:47:02
		
			
			- 
				Доброго времени суток 
Имею на странице 2 пары тагов . Нужные мне данные находятся между первой парой. 
 
 (.+?)
 
Не срабатывает. Более того, когда я пытаюсь подобрать правильное выражение с помощью онлайн генератора, как только я заношу в скобки значения, совпадения сразу пропадают.
			 
			
			- 
				А избавиться от двух нельзя? Нехорошо это.
			
 
			
			- 
				# cat > /tmp/test.html
Test
Body A
Body B
# perl -le \'my $file = do { local $/;  }; $file =~ m#(.+?)#sm && print $1\' < /tmp/test.html
Body A
#
			 
			
			- 
				hanslinger 
 в смысле "избавиться от двух"?.......
arto я с перлом не дружу........ мне б на с#. В любом случае, если я привильно понимаю, это то же выражение. Или нет? 
(.+?) выбирает обе пары. 
Как мне только  выдернуть только то, что между первой парой стоит? Т.е. сами теги body мне не нужны.
			 
			
			- 
				нет.
как видите, выбирает содержимео первой пары.
учить c# влом.
			 
			
			- 
				arto 
да я в общем то и не прошу учить :о), но и видеть, что ваш пример выбирает только то, что мне нужно, я не вижу именно по причине своего не знания перла......
Было бы здОрово, если б вы само исправленное выражение написали, без сопровождающего кода, что б было видно где у меня косяк.
... Я уж и просить боюсь о кратких комментариях необходимых дополнений...
			 
			
			- 
				Я имел в виду то, что не должно быть двух body на странице. По идее.
			
 
			
			- 
				я не знаю синтаксиса регулярных выражений в c#.
он может отличаться от perl
попробуйте (?sm)(.+?), результат должен быть в группе 1
			 
			
			- 
				arto во-о-от...... Спасибо. Теперь картина проясняется.
 (?sm) это флаги Multiline и Dot all Mode?
			 
			
			- 
				да. можете добавить i
			
 
			
			- 
				Понятно.
Простите за назойливость, но не подскажите что отвечает за влючение/исключение значений в выборку?
 Например как выглядело бы то же выражение, если бы мне надо было исключить из выборки  и включить ? Понимаю, что в данной ситуации вопрос бредовый, но для примера  подойдет.
			 
			
			- 
				(.+?)
по регулярным выражениям подойдет книжка фридла, второе или третье издание, либо
perldoc perlre, perldoc perlretut для перловых выражений.
			 
			
			- 
				спасибо. Как тут вам рейтинг можно поднять? :о)
			
 
			
			- 
				
hanslinger: По идее.
hanslinger, мы с тобой одиноки в этом мире (ц)
Тема закрыта.