regex - 使用 Meteor Match 和 Regex 检查字符串

标签 regex meteor match

我正在检查字符串数组中是否有特定的模式组合。我在同时使用 Meteor 的 Match 函数和正则表达式文字时遇到问题。我想检查数组中的第二个字符串是否是 url。

addCheck = function(line) {

    var firstString = _.first(line);

    var secondString = _.indexOf(line, 1);

    console.log(secondString);

    var urlRegEx = /((([A-Za-z]{3,9}:(?:\/\/)?)(?:[\-;:&=\+\$,\w]+@)?[A-Za-z0-9\.\-]+|(?:www\.|[\-;:&=\+\$,\w]+@)[A-Za-z0-9\.\-]+)((?:\/[\+~%\/\.\w\-]*)?\??(?:[\-\+=&;%@\.\w]*)#?(?:[\.\!\/\\\w]*))?)/g;


    if ( firstString == "+" && Match.test(secondString, urlRegEx) === true )  {

        console.log( "detected: + | line = " + line )

    } else {
        // do stuff if we don't detect a 
        console.log( "line = " + line );

    }
} 

如有任何帮助,我们将不胜感激。

最佳答案

Match.test用于测试变量的结构。例如:“它是一个字符串数组,或者一个包含字段createdAt的对象”,等等。

RegExp.test另一方面,用于测试给定字符串是否与正则表达式匹配。这看起来就是你想要的。

尝试这样的事情:

if ((firstString === '+') && urlRegEx.test(secondString)) {
  ...
}

关于regex - 使用 Meteor Match 和 Regex 检查字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29140527/

相关文章:

javascript - 使用正则表达式限制字段中的帐户 ID 输入

java - 匹配到逗号前最后 3 个字符的正则表达式

javascript - Meteor 嵌套 View 和产量

javascript - 在发布/订阅中使用 session.get 变量

python - python Pandas/numpy 的 R 的 match() 等价物是什么?

python - 允许 Python re.findall 从左到右查找重叠的数学

PHP 正则表达式匹配空格

javascript - Meteor:防止 findOne() 出现未定义的结果

javascript - 在两个数组中查找匹配值

python 字符串匹配时间复杂度