首页 > web前端 > js教程 > 正文

JavaScript趣题:找出凶手

黄舟
发布: 2017-02-15 14:30:38
原创
1686人浏览过

一位关键的证人被谋杀了,他在临死前想说出凶手的姓名,但声音很微弱又断断续续,难以分辨。

我们获取了他的录音,用一个字符串表示,这个字符串以一个字母开头,每一个“~”符号代表一个不确定的字母。

字符串的长度并不意味着名字的长度,因为他有可能在说出凶手完整名字前就咽气了。

警方提供了一份嫌犯的名单,要你协助,根据录音,找出凶手。

结果应该为字符串,如果找不到,返回空字符串,如果找出了多个,请返回这些,并用逗号分割开来。

立即学习Java免费学习笔记(深入)”;

	
	var suspects=['Bernard Deltheil','Peter Gone','Peter Reeves','Roland Scorsini']
	
	sc('b~~~~~~~~~~~~~~l',suspects); //'Bernard Deltheil'
	sc('p~t~r',suspects);			 //'Peter Gone,Peter Reeves'
	sc('a~b~c~~d',suspects);         //''
登录后复制


注意:

猫眼课题宝
猫眼课题宝

5分钟定创新选题,3步生成高质量标书!

猫眼课题宝 85
查看详情 猫眼课题宝

1.对每一个嫌犯的姓名进行匹配,要忽略大小写。

2.代码应尽可能简短

下面的实现,我使用了正则表达式,先将字符串内的“~”符号替换为“.”,再将其作为模式一部分,和姓名做匹配。

function sc(s,a){
    var r = [];
    a.forEach((e)=>{if(new RegExp("^" + s.replace(/~/g,"."),"i").test(e))r.push(e);});
    return r.join(",");
}
登录后复制


以上就是JavaScript趣题,找出凶手的内容,更多相关内容请关注PHP中文网(www.php.cn)!

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号