最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

JavaScript趣题:找出凶手

来源:动视网 责编:小采 时间:2020-11-27 20:25:14
文档

JavaScript趣题:找出凶手

JavaScript趣题:找出凶手:一位关键的证人被谋杀了,他在临死前想说出凶手的姓名,但声音很微弱又断断续续,难以分辨。我们获取了他的录音,用一个字符串表示,这个字符串以一个字母开头,每一个~符号代表一个不确定的字母。字符串的长度并不意味着名字的长度,因为他有可能在说出
推荐度:
导读JavaScript趣题:找出凶手:一位关键的证人被谋杀了,他在临死前想说出凶手的姓名,但声音很微弱又断断续续,难以分辨。我们获取了他的录音,用一个字符串表示,这个字符串以一个字母开头,每一个~符号代表一个不确定的字母。字符串的长度并不意味着名字的长度,因为他有可能在说出


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

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

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

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

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

	
	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); //''


注意:

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趣题:找出凶手

JavaScript趣题:找出凶手:一位关键的证人被谋杀了,他在临死前想说出凶手的姓名,但声音很微弱又断断续续,难以分辨。我们获取了他的录音,用一个字符串表示,这个字符串以一个字母开头,每一个~符号代表一个不确定的字母。字符串的长度并不意味着名字的长度,因为他有可能在说出
推荐度:
标签: js 找出 javascript
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top