Показать сообщение отдельно
Старый 15.08.2009, 16:05
Аллиас вне форума Посмотреть профиль Отправить личное сообщение для Аллиас Найти все сообщения от Аллиас
  № 5  
Ответить с цитированием
Аллиас
 
Аватар для Аллиас

Регистрация: May 2009
Сообщений: 63
Согласно написанному в приведенной статье приведенное ниже выражение pat должно соответствовать "подстроке 'для' перед которой нету слова 'только '"; следовательно replace должен выполнится только для первой строки, а вторую вернуть без изменений, но почему-то модифицируются обе строки:
Код AS3:
var pat:RegExp = /(?!только )(для)/gis;
var str:String = "текст для replace";
var str2:String = "текст только для replace";
trace(str.replace(pat, "only $1"));
//текст only для replace
trace(str2.replace(pat, "only $1"));
//текст только only для replace
//а должно быть: текст только для replace
//ведь правда?
вероятно я упускаю какую-то мелочь... или не так понимаю принцип работы "негативной группы просмотра вперед"
__________________
Все не так просто, как кажется... все гораздо проще...


Последний раз редактировалось Аллиас; 15.08.2009 в 16:11.