读书人

怎样输出两个字符串中相同的部分?该怎

发布时间: 2012-03-13 11:21:12 作者: rapoo

怎样输出两个字符串中相同的部分??
比如,This is a dog.和this is a cat.
然后,应该输出"is,a"

应该用怎样的函数来比较?


[解决办法]
参考如下代码:

JScript code
function duplicateWord(a, b) {    if (!a || !b) return;    var dict = {};    var result = [];    a.replace(/\w+/g, function() { // 获得第一组单词        dict[arguments[0]] = true;;    });    b.replace(/\w+/g, function() { // 判断单词是否重复,如果重复添加到结果中        if (dict[arguments[0]])            result.push(arguments[0]);    });    return result;}var words = duplicateWord("This is a dog.", "this is a cat.");alert(words);
[解决办法]
给String添加一个函数
HTML code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML> <HEAD>  <TITLE> New Document </TITLE>  <script>  String.prototype.sameElements = function(str){    var arr = new Array();    str = str.replace(".","");    var temp = str.split(" ");    for(var i=0;i<temp.length;i++){        if(this.indexOf(temp[i])!=-1){            arr.push(temp[i]);        }    }    return arr;  }  var str1 = "This is a dog."  var str2 = "this is a cat."  alert(str1.sameElements(str2));  </script> </HEAD> <BODY>   </BODY></HTML> 

读书人网 >JavaScript

热点推荐