Javascript函数模式匹配

时间:2015-07-31 12:46:57

标签: javascript regex pattern-matching

我在测验中遇到了这个javascript问题。下面的代码返回true。但我不知道如何。任何人都可以解释一下

主题标题:与JavaScript匹配的模式

以下代码返回什么值?

function test(form) {
  var str = "apples, oranges, bananas, melons";
  var re = /apple/i;
  var testStr = re.test(str);
  document.write(testStr + "<BR>");
  //Outputs - true 
 }

3 个答案:

答案 0 :(得分:0)

根据w3schools documentation

  

test()方法测试字符串中的匹配。

     

如果找到匹配项,则此方法返回true,否则返回   假的。

由于apple正则表达式将匹配包含Apple的任何字符串,其中字母的大小写被忽略,即它也会匹配APPLEapples, oranges, bananas, melons等,由于字符串apple包含test()true方法会返回document.write(testStr + "<BR>");

HTML DOM write()

  

write()方法将HTML表达式或JavaScript代码写入   文档。

     

write()方法主要用于测试:如果在a之后使用它   HTML文档已完全加载,它将删除所有现有的HTML。

因此,{{1}}方法调用将测试结果写入文档。

答案 1 :(得分:0)

请阅读Mozilla Foundation提供的有关test()的文档,其中包含:

  • 语法
  • 描述
  • 实施例
  • 规格
  • 浏览器兼容性

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp/test

以下示例来自Mozilla Foundation:

function testinput(re, str){
    var midstring;

    if (re.test(str)) {
        midstring = ' contains ';
    } else {
        midstring = ' does not contain ';
    }
    console.log(str + midstring + re.source);
}

答案 2 :(得分:-1)

它会在字符串str中搜索apple的出现,并输出是否找到它。