2012-04-10 2 views
10

Нарушитель линияcoffeescript: почему «str» .replace (//g, «») дает ошибку компиляции coffeescript?

"str".replace(/ /g, "") 

дает

Error: In orders.js.erb.coffee, Parse error on line 463: Unexpected 'MATH' 
    at Object.parseError (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/parser.js:466:11) 
    at Object.parse (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/parser.js:542:22) 
    at Object.compile (/usr/local/lib/node_modules/coffee-script/lib/coffee-script/coffee-script.js:38:22) 
    at /usr/local/lib/node_modules/coffee-script/lib/coffee-script/command.js:149:33 
    at /usr/local/lib/node_modules/coffee-script/lib/coffee-script/command.js:115:19 
    at [object Object].<anonymous> (fs.js:107:5) 
    at [object Object].emit (events.js:61:17) 
    at afterRead (fs.js:878:12) 
    at wrapper (fs.js:245:17) 

Является ли это ошибка в CoffeeScript компилятором или я что-то отсутствует?

ответ

28

Escape the first whitespace inside of the regexp

"str".replace(/\ /g, "") 

компилируется нормально.

+2

Печально, что в документации coffeescript ничего не говорится о необходимости избегать пробелов в регулярных выражениях. – neuronaut

Смежные вопросы