首页 新闻 搜索 专区 学院

如何判断两个字符串中间是否有重复的部分?

0
悬赏园豆:15 [已解决问题] 解决于 2016-09-13 08:51

如何判断两个字符串中间是否有重复的部分啊?

 

可以返回一个布尔值就行

 

有代码更好

leywis的主页 leywis | 初学一级 | 园豆:10
提问于:2016-09-12 17:46
< >
分享
最佳答案
0

用两个for遍历就可以了,只要有相同的就退出循环。。

收获园豆:10
骑猪敲代码 | 初学一级 |园豆:200 | 2016-09-12 17:48

一个字符一个字符的比较啊

leywis | 园豆:10 (初学一级) | 2016-09-12 17:49

@idolater: 不是这个意思嘛?

骑猪敲代码 | 园豆:200 (初学一级) | 2016-09-12 17:50

@骑猪敲代码: 如果是多字的词语呢?虽然说暂时只需要返回布尔值。但是能返回相同的部分更好

leywis | 园豆:10 (初学一级) | 2016-09-12 17:53

@idolater: 定义一个数组,不用退出循环,判断如果相同就把值写入到数组里面,不就得到相同的部分了嘛,还是两个简单的for循环就可以。。

骑猪敲代码 | 园豆:200 (初学一级) | 2016-09-12 17:57

@骑猪敲代码: 直接给你代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>string</title>
</head>
<body>
    <script>
        var a='为中华之崛起而读书',b='少年强则中华强',c=[];
        for (var i = 0; i < a.length; i++) {
            var str='';
            for (var j = 0; j < b.length; j++) {
                if (a[i]==b[j]) {
                    str+=a[i];
                }
            }
            if (str.length>0) {
            c.push(str);
        }
    }
        console.log(c);
    </script>
</body>
</html>

话说你豆子怎么这么少。。

骑猪敲代码 | 园豆:200 (初学一级) | 2016-09-12 19:29

@骑猪敲代码: 挥霍过度

leywis | 园豆:10 (初学一级) | 2016-09-13 08:52
其他回答(4)
0

“重复的部分”怎么定义呢?

顾晓北 | 园豆:10219 (专家六级) | 2016-09-12 17:54

类似   “为中华崛起而读书”      和   “少年强则中华昌”   中的 “中华”

支持(0) 反对(0) leywis | 园豆:10 (初学一级) | 2016-09-12 17:56

@idolater:  “为华崛起而读书”      和   “少年强则中华昌”  那这样呢?

 

支持(0) 反对(0) 吴瑞祥 | 园豆:28846 (高人七级) | 2016-09-12 18:26
0

这个是C++的代码,你看怎么样。

bool isRepeat(char *str1, char *str2)
{
int len1=strlen(str1);
for(int i=0;i<len1;i++)
if(strstr(str2,str1[i])!=NULL) return true;

return false;
}

Boblim | 园豆:492 (菜鸟二级) | 2016-09-12 17:58

多谢,不过最后还是js

支持(0) 反对(0) leywis | 园豆:10 (初学一级) | 2016-09-12 17:59

zuihao

支持(0) 反对(0) leywis | 园豆:10 (初学一级) | 2016-09-12 17:59

不过这个只是判断一个字符的,如果你想得到有无最长的字段,可以在判断一个字符相同后,依次判断之后的,看是否是你想要的字段

支持(0) 反对(0) Boblim | 园豆:492 (菜鸟二级) | 2016-09-12 18:00

@idolater: 

你可以把上述代码的strstr换成js里的search。然后变量定义按var来就好了

支持(0) 反对(0) Boblim | 园豆:492 (菜鸟二级) | 2016-09-12 18:05
0

可以用正则判断一下

爱吃de馒头 | 园豆:255 (菜鸟二级) | 2016-09-12 18:54
0

function find(str1,str2)
{
for(var i=0;i<str1.length;i++){
if(str2.indexOf(str1[i]) != -1){
return true;
}
}
return false;
}
console.log(find("asbdfds","yiukajhj"));

一个for循环就行了,用indexOf判断是否存在该字符

收获园豆:5
刘冰0117 | 园豆:102 (初学一级) | 2016-09-12 22:37
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册