作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个字符串,表示由空格分隔的标签列表。它可能看起来像这样:
Australia 2010 David November Family
如果标签至少包含一个空格,则必须用引号引起来。所以字符串可以是:
"Best Friends" "My Pictures" Wow "Very Nice Photo" University
单个单词也可以使用引号。例如:
"Good One" Fantastic "February" "My Family" "Friends"
问题是:
如何从字符串中获取标签数组?
例如,我想从第三个字符串中获取以下数组:
arr[0] = "Good One"
arr[1] = "Fantastic"
arr[2] = "February"
arr[3] = "My Family"
arr[4] = "Friends"
如果字符串的格式不正确,我想了解它(例如:得到空数组作为结果)。
最佳答案
您可以使用 /"[^"]+"|\w+/
等正则表达式来匹配标签。要获取包含所有不带引号的匹配项的数组,您可以使用类似
var re = /"[^"]+"|\w+/g;
var result = [];
var match;
while(match = re.exec(input))
result.push(match[0].replace(/"/g, ""));
如果不需要删除引号,则可以直接使用
var result = input.match(re);
关于javascript - 需要 Javascript 正则表达式帮助 - 拆分文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3378541/
我是一名优秀的程序员,十分优秀!