Forum Webscript.Ru
		Программирование => Perl => Тема начата: SergioZh от 14 Августа 2001, 08:58:01
		
			
			- 
				На Перле, ищу вхождение русской строки в русскую строку, и для игнорирования регистра указываю опцию "i" - не работает !
 .. подключен модуль локаль (1251)
 вот эта строка:
 $s1 =~s/($z)/("$a$1$b")/gie;
 
 Как быть ?
- 
				А скобки до зарезу нужны? Без них работает...
 И, кстати, зачем там /e ?
 Скобки нужны, чтобы присвоить значание $1, \\e нужно для вычисления заменяющего выражения (по крайней мере, так кажется). А вот почему русский не пашет, не знаю :( Попробуй все-таки е убрать!
- 
				Так ведь в скобках одна переменная, она и равна $1 :D
			
- 
				А скобки до зарезу нужны? Без них работает...
 И, кстати, зачем там /e ?
- 
				надо
 $s1 =~s/($z)/("$a$1$b")/gie;
 
 допустим
 $z=\'при\';
 
 тогда пишем:
 
 $s1 =~s/([П,п][Р,р][и,И])/("$a$1$b")/gie;
 
 коряво, но вроде работает.