【问题标题】:Coffeescript Regex interpolationCoffeescript 正则表达式插值
【发布时间】:2014-07-01 03:36:02
【问题描述】:

Coffeescript 支持字符串插值:

user = "world"
greeting = "Hello #{user}!"

是否可以像在字符串中一样在正则表达式中使用插值?例如。

regex = /Hello #{user}/g

附:我知道我可以使用RegExp(greeting, 'g'),我只是想要更简洁的代码。

【问题讨论】:

    标签: coffeescript


    【解决方案1】:

    块正则表达式(Heregexes)支持插值。

    块正则表达式

    类似于阻塞字符串和 cmets, CoffeeScript 支持块正则表达式——扩展正则表达式 忽略内部空格并且 可以包含 cmets 和 插值。模仿 Perl 的 /x 修饰符,CoffeeScript 的块 正则表达式由 /// 分隔,并且对复杂化大有帮助 正则表达式可读。

    这个咖啡脚本代码:

    name="hello"
    test=///#{name}///
    

    编译成

    var name, test;
    
    name = "hello";
    
    test = RegExp("" + name);
    

    【讨论】:

      猜你喜欢
      • 2015-10-18
      • 1970-01-01
      • 1970-01-01
      • 2013-06-24
      • 1970-01-01
      • 1970-01-01
      • 2015-12-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多