我有一个字符串,我想提取引号之前的字符。

示例是从 14'中提取 14 -€14.99

我正在使用下面的代码来实现这一目标。

$menuItem.text().match(/[^']*/)[0]

我的问题是,如果字符串类似€0.88,我希望返回一个空字符串。但是,我拿回了€0.88的完整字符串。

我在比赛中做错了什么?

最佳答案

这是您应该用来拆分的内容:

string.slice(0, string.indexOf("'"));

然后处理您不存在的值(value)边缘情况:
function split(str) {
 var i = str.indexOf("'");

 if(i > 0)
  return  str.slice(0, i);
 else
  return "";
}

Demo on JsFiddle

07-24 18:03
查看更多