从字符串jquery中提取数据

时间:2017-05-18 17:33:23

标签: javascript jquery

我有这样的场景: 我需要构建一个jQuery函数,它将字符串作为输入并将字符串更新为另一个字符串。 输入可以是以下之一:

  • A="0"
  • A="0, 5"(基本上可以是“0,any_other_digits_different_from_0”)
  • A="0, 58"
  • A="58"(基本上任何不以零开头的数字)

我希望功能更新为:

  • 如果输入的是第一个选项(A="0")更新A="--"
  • 如果输入是第二个选项(A="58")请不要,请保留A="58"
  • 如果输入的是第3个选项(A="0, 5"更新为A="5"
  • 如果输入的是第4号选项(A="0, 58")更新为A="58"

选项4在“0”之后可以有两位数以上。

似乎这可以通过正则表达式以某种方式完成,但我无法将任何可以使它工作的东西放在一起。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:1)

您可以拆分字符串并获取最后一个值。如果归零'--'

function getValue(a) {
    return (+a.split(', ').pop() || '--').toString();
}
 
console.log(getValue("0"));     // "--"
console.log(getValue("0, 5"));  // "5"
console.log(getValue("0, 58")); // "58"
console.log(getValue("58"));    // "58"

使用正则表达式搜索最后一个数字的提案

function getValue(a) {
    return (+a.match(/\d+$/) || '--').toString();
}
 
console.log(getValue("0"));     // "--"
console.log(getValue("0, 5"));  // "5"
console.log(getValue("0, 58")); // "58"
console.log(getValue("58"));    // "58"