正则表达式,#valueN#的所有条目都在字符串中

时间:2013-12-02 12:16:57

标签: javascript regex

我有一个下一个字符串 - "#Value# #value2# (#value3#) .. #valueN#" 我需要编写一个regexp来获取数组["Value", "#value2#", "#value3#", "valueN"]

我接下来试过了:

  var regexp = /#([A-z]+)#/gi;
  var string = "#Value# #value2# (#value3#) .. #valueN#";
  string.match(regexp);

但是我只得到字符串中表达式的第一个和最后一个条目,但我需要获取所有条目。

请注意,整个字符串可以随时更改,我需要在#个符号之间获取所有文本条目。

任何进步的Thx。

1 个答案:

答案 0 :(得分:4)

正则表达式缺少数字部分([0-9]\d):

> "#Value# #value2# (#value3#) .. #valueN#".match(/#[a-z\d]+#/ig)
["#Value#", "#value2#", "#value3#", "#valueN#"]

BTW,/[A-z]/不仅匹配字母,还匹配Za之间的字符:[\],{ {1}},^_。小心!

`

也许您的意思是/[A-z]/.test('[') true /[A-Za-z]//[A-Z]/i