【发布时间】:2015-06-02 13:56:00
【问题描述】:
基本上我有一个这样的字符串数组:
var array = [
'Top level',
'- Sub item',
'-- Child of sub',
'Another top',
'Yet another top',
'- Child',
];
我正在尝试循环每个字符串并检查字符串是否以连字符开头,如果是,请计算多少次然后删除。
我可以这样做:
if (string.substring(0, 1) == "-") {
// ...
} else if (string.substring(0, 2) == "--") {
// ...
} else if (string.substring(0, 3) == "---") {
// ...
}
我没有测试过,但你可以理解..
我希望使用正则表达式获得更简单的解决方案?有什么帮助吗?
谢谢。
-- 编辑--
我需要计算并删除每个字符串中的连字符,因为我有一个文本区域供用户输入带有新行和连字符的字符串。
文本区域值:
Top level
- Sub item
-- Child of sub
Another top
Yet another top
- Child
然后我将 textarea 值分解为一个数组:
var array = textareaValue.split('\n');
for (var i = 0; i < array.length; i++) {
var this = array[i];
// Now check for hyphens and count how many
// if (hyphens === '-')
// else if (hyphens === '--') ...etc
};
【问题讨论】:
-
然后删除什么?
-
这不适用于所有带有'-'的元素去匹配第一个;)
-
对不起,然后从字符串中删除连字符
-
两者,我将编辑我的问题以包含更多信息
-
实际的最终结果是什么?列表或下拉列表?这听起来像是一个 X/Y 问题
标签: javascript arrays regex