通过多个分隔符解析字符串
parsing a string looking at multiple delimiters
我正在尝试将字符串解析为:
- 删除首字母"午餐"
- 将休息时间划分为一周中的几天及其相关的食物
输入以字符串的形式出现,格式如下:
var s = 'lunch monday: chicken and waffles, tuesday: mac and cheese, wednesday: salad';
我的目标是分裂成:
[monday, chicken and waffles, tuesday, mac and cheese, wednesday, salad]
我正在使用s = s.split(' ').splice(1, s.length-1).join(' ').split(':');
这让我着迷:
["monday", " chicken and waffles, tuesday", " mac and cheese, wednesday", " salad"]
很明显,它只在:
上分裂,将,
保留在那里。我尝试过使用regex split(":|'',");
在:
或,
上进行拆分,但这不起作用。
有什么想法吗?
如果你想同时拆分这两个,你只需要稍微调整一下正则表达式:
// Notice the 'g' flag which will match all instances of either character
input.split(/[:,]/g);
您可以通过replace()
和split()
函数将所有这些组合起来以获得您想要的内容:
// The initial replace will trim any leading "lunch " and the split will handle the rest
var output = input.replace(/^lunch /,'').split(/[:,]/g);
示例
var input = 'lunch monday: chicken and waffles, tuesday: mac and cheese, wednesday: salad';
var output = input.replace(/^lunch /,'')
.split(/[:,]/g)
.filter(function(x){ return x.length > 0;});
alert(output);
这是一个使用replace()
和split()
的解决方案
var s = 'lunch monday: chicken and waffles, tuesday: mac and cheese, wednesday: salad';
s = s.replace('lunch ', '');
s = s.replace(/:(' )/g, ',');
s = s.split(',');
console.log(s);
输出:
【"星期一"、"鸡肉和华夫饼"、"星期二"、"mac和奶酪"、"周三"、"沙拉"】
我不确定是否理解你的目标。但是这是吗
var string = 'lunch monday: chicken and waffles, tuesday: mac and cheese, wednesday: salad';
var splittedString = string.split(/:|,/);
splittedString.forEach(function(e){
document.write(e + "<br>")
});
你在找什么?
相关文章:
- 不使用分隔符分解字符串
- 通过多个分隔符解析字符串
- 用分隔符分隔具有多个整数值的字符串的Javascript"重试错误的值
- 使用Regex拆分字符串,保留分隔符
- JS将分隔符分隔的字符串转换为数组元素
- 在 Javascript 中拆分包含单次出现(不是两次)分隔符的字符串
- 如何将带有逗号千位分隔符的字符串解析为数字
- 在 JavaScript 中拆分字符串,但保留分隔符 /
- 如何拆分具有多个分隔符的字符串
- jquery JSON 从查询字符串中删除分隔符
- 正则表达式使用特定的分隔符JavaScript从字符串中提取部分
- JS/XSS:将用户提供的字符串分配给变量时;替换 <,> 和字符串分隔符是否足够
- 使用 jquery 或 javascript 拆分带有不同分隔符的字符串
- 基于多个分隔符拆分字符串
- 字符串分词器无法正确处理一行中的空标记或多个分隔符
- 如何在 js 中使用 .match(regEx) 仅获取不带分隔符的内部字符串
- 如何在javascript中拆分行空格/分隔符上的字符串
- 如何使用 Angular “数字”过滤器键入时在输入字段中设置带有千和小数分隔符的字符串格式
- 将带有分隔符的数组拆分为字符串
- 通过RegEx Javascript分割2个字符串分隔符