如何在coffeescript heregex中设置修饰符?

时间:2012-05-02 15:57:44

标签: regex coffeescript

我在coffeescript中有这个heregex试图抓住网址:

regex = /// (
  ((f|ht){1}tp(s)?://)
  [-a-zA-Z0-9@:%_\+.~?&//=]+
  )
///

但如何设置全局和忽略大小写标志?我试过这个:

    newregex = regex.compile(regex,"gi")

但这不起作用

1 个答案:

答案 0 :(得分:6)

Coffeescript将你的heregex转换为单行正则表达式:

//Generated by CoffeeScript 1.3.1
var regex;

regex = /(((f|ht){1}tp(s)?:\/\/)[-a-zA-Z0-9@:%_\+.~?&\/\/=]+)/;

javascripts正则表达式语法/regex/mods是regex.compile(“regex”,“mods”)的简写,因此您无需编译它。您只需将修饰符添加到heregex:

regex = /// (
  ((f|ht){1}tp(s)?://)
  [-a-zA-Z0-9@:%_\+.~?&//=]+
  )
///gi