javascript正则表达式问题?

javascript正则表达式问题?,javascript,regex,Javascript,Regex,我有以下部门: <div id = "zone-2fPromotion-2f" class = "promotion"> 但它并没有给我确切的结果,但它给了我数组(Promotion-2f,Promotion,2f),但这不是我需要的。任何指导,如果有人能向我推荐好的regex在线资源,我将非常感谢 这就是你想要的。匹配结果首先是表达式的整个匹配部分,然后是各个组。因此,既然您想要检索组2(第二批()),只需执行以下操作 this.match = this.id.match(/(P

我有以下部门:

<div id = "zone-2fPromotion-2f" class = "promotion">

但它并没有给我确切的结果,但它给了我数组(Promotion-2f,Promotion,2f),但这不是我需要的。任何指导,如果有人能向我推荐好的regex在线资源,我将非常感谢

这就是你想要的。匹配结果首先是表达式的整个匹配部分,然后是各个组。因此,既然您想要检索组2(第二批()),只需执行以下操作

this.match = this.id.match(/(Promotion)-([0-9a-f]{2})/)[2];
另外,我找到的最好的在线参考是

编辑:您可以省去关于促销的(),因为您不担心返回该部分,所以可以这样做

this.match = this.id.match(/Promotion-([0-9a-f]{2})/)[1];

这是一个很好的关于所有语言正则表达式的资源


好极了。如果您有时间,请通读一下regular-expressions.info网站上的教程,它非常全面,解释得非常好。是的。我会经历的。我一直想学习正则表达式,因为它们是开发人员可以使用的非常强大的工具。但不知何故,我并没有从一开始就得到任何合适的资源……我也不太喜欢书,所以我不想读完《掌握正则表达式》这本书。
this.match = this.id.match(/Promotion-([0-9a-f]{2})/)[1];