[Moscow.pm] А все таки классный язык Perl.

Ivan Petrov i.petro.77.00 на gmail.com
Пт Дек 7 14:14:48 PST 2012


> Опять не понял.

> ➜  Projects  cat 1.js
> var s = "faulta\nbtalerance";

> var re = /(.*?)(a\nb)(.*)/m;

> var m = re.exec(s);

> console.log(m);

как говорили у нас на родине "авоттех..." оно не работает.

это же не Perl, регулярные выражения совершенно непредсказуемы!

добавляем \n в слово fault и все магически перестает работать:

nb:[~]$ nodejs 1.js                
[ 'ulta\nbtalerance',
  'ult',
  'a\nb',
  'talerance',
  index: 3,
  input: 'fa\nulta\nbtalerance' ]
nb:[~]$ cat 1.js 
var s = "fa\nulta\nbtalerance";

var re = /(.*?)(a\nb)(.*)/m;

var m = re.exec(s);


console.log(m);


и без /m:

nb:[~]$ cat 1.js 
var s = "fa\nulta\nbtalerance";

var re = /(.*?)(a\nb)(.*)/m;

var m = re.exec(s);


console.log(m);

nb:[~]$ vim 1.js
nb:[~]$ nodejs 1.js
[ 'ulta\nbtalerance',
  'ult',
  'a\nb',
  'talerance',
  index: 3,
  input: 'fa\nulta\nbtalerance' ]



Подробная информация о списке рассылки Moscow-pm