Javascript Regex-如何基于正则表达式将字符串拆分为数组
Javascript Regex - How to split string to an array based on regex
我有一个字符串:
"<b>Dispatcher Number1 $CREATED_NEW_INCIDENT$ </b> $BASED_ON$ 1 $EVENTS$"
我想创建一个数组,它只包括以$开头和结尾的单词。对于这个例子,我正在寻找的结果是:
["$CREATED_NEW_INCIDENT$","$BASED_ON$", "$EVENTS$"]
我知道我可以用regex做这件事,但我还没有成功。此外,当我找到正确的正则表达式时,我该怎么办?分开?
您不需要拆分它们。只需使用正则表达式进行匹配
/'$[^$]+'$/g
像这个
var str = "<b>Dispatcher Number1 $CREATED_NEW_INCIDENT$ </b> $BASED_ON$ 1 $EVENTS$";
var arr = str.match(/'$[^$]+'$/g);
只需使用$
开始匹配,直到找到$
。
var regEx = /'$.*?'$/g;
console.log(data.match(regEx));
# [ '$CREATED_NEW_INCIDENT$', '$BASED_ON$', '$EVENTS$' ]
此处
.
表示匹配任意字符。.*
表示匹配任何字符,用于零次或多次.*?
表示匹配任何字符,零次或多次,但只匹配尽可能少的字符。
如果我们在.*?
中不使用?
,它将从第一个$
符号匹配到最后一个$
符号。
您可以使用:
var s = "<b>Dispatcher Number1 $CREATED_NEW_INCIDENT$ </b> $BASED_ON$ 1 $EVENTS$";
var m = s.match(/('$[^$]*'$)/g);
//=> ["$CREATED_NEW_INCIDENT$", "$BASED_ON$", "$EVENTS$"]
您也可以使用:
"<b>Dispatcher Number1 $CREATED_NEW_INCIDENT$ </b> $BASED_ON$ 1 $EVENTS$".match(/'$['w]+'$/g)
相关文章:
- 将字符串拆分为数组时出现JavaScript错误
- 如何将字符串拆分为字符,但在javascript中保留空格
- 将字符串拆分为;只要它's不在»«
- 如何将以下字符串拆分为二维数组:
- 将javascript中的字符串拆分为一个数组
- 这个字符串拆分器可以重构或改进吗
- Regex将字符串拆分为大小适中的块
- 将字符串拆分为具有固定字符数的数组
- 将字符串拆分为数组
- 如何在没有javascript中的split函数的情况下将字符串拆分为单词
- 字符串拆分并获取第一次和最后一次出现
- node.js将接收到的字符串拆分为不同的变量,然后格式化为json字符串
- 如何将复杂的字符串拆分为多个部分
- 将字符串拆分为多维数组
- 将逗号分隔的字符串拆分为单独的字符串
- 如何在 Javascript 中以特定间隔将字符串拆分为数组
- Javascript 字符串拆分
- 使用 jQuery 将长字符串拆分为文本块
- 在javascript中将字符串拆分为句子
- 在将字符串拆分为硒时获取空输出