Показать сообщение отдельно
  #9 (permalink)  
Старый 10.02.2013, 16:16
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Опять мимо
function TstThis(str){
var a=str.replace(/^.*?((?:["']\s*)?this(?:["']\s*)?)/i,'$1')
var b=a.replace(/\s/ig,'');
 return!(b.indexOf("'this'")!=-1||b.indexOf('"this"')!=-1)
}
var str='return el == "bla-bla-bla this \"foo"'
alert(TstThis(str))

=> true, а должно быть false, т.к. this указан в кавычках, а реального this нет.

ЗЫ: ты рассматриваешь самый элементарный случай, когда кроме this в кавычках ничего нет. В кавычках может быть любой набор символов, т.к. это простая строка.
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 10.02.2013 в 16:19.
Ответить с цитированием