使用正则表达式来分割双连字符而不是单个连字符

时间:2014-05-25 16:22:23

标签: javascript regex split

我有一个html元素ID,如下所示: dp__1-2--1-3

我尝试使用JavaScript split()函数来关闭并返回最终的' 1-3'

我的正则表达能力很差但是有点搜索让我到了这一步: var myId = "dp__1-2--1-3"; var myIdPostFix = myId.split(/[\-\-]+/).pop();

不幸的是,只返回&{39; 3'。

所以我的问题是如何拆分双连字符而不是单个连字符?

2 个答案:

答案 0 :(得分:2)

正则表达式中的括号使其无法正常工作。一个集合将匹配其中任何一个characers,因此[\-\-][\-]相同,即匹配单个连字符。

只需删除括号:

var myIdPostFix = myId.split(/--/).pop();

或只使用字符串'--'而不是正则表达式:

var myIdPostFix = myId.split('--').pop();

答案 1 :(得分:1)

split接受正则表达式或字符串作为第一个参数。

你非常接近。你可以通过以下方式实现目标:

var myIdPostFix = myId.split("--").pop();