搜索字符串并返回特殊字符

时间:2018-02-02 07:28:38

标签: javascript node.js string function bots

我正在制作一个机器人,用于扫描股票代码的字符串输入并返回当前价格。格式为!{ticker}例如!AAPL

我目前的职能是:

function getVals(comment){
    let n = comment.indexOf("!")
    //Check if value
    if(n > 0){
        let ticker = comment.substring(n +1, n+5);

        //Then perform price check with ticker

    } else{
    console.log("error")
}
};

//Example comment
getVals("This if my first ticker !AAPL I also want to know !EA");

我的问题是:

  1. 代码仅扫描"!"后的4个字符。我不确定如何在空白之前结束
  2. 代码在第一个结果后执行,而不是扫描剩余的代码。
  3. 非常感谢任何帮助,提前谢谢。

1 个答案:

答案 0 :(得分:1)

您应该使用Regexp来实现此目标。



const str = 'This if my first ticker !AAPL I also want to know !EA';

const regexp = /![A-Z]+/g;

const result = str.match(regexp);

// Matches with '!' char
console.log(str.match(regexp));

// Removes '!' char
console.log(str.match(regexp).map((val)=>val.slice(1)));