Maison >interface Web >js tutoriel >Question amusante en JavaScript : trouver le meurtrier

Question amusante en JavaScript : trouver le meurtrier

黄舟
黄舟original
2017-02-15 14:30:381300parcourir

Un témoin clé a été assassiné. Avant de mourir, il a tenté de nommer le meurtrier, mais sa voix était faible et intermittente, ce qui la rendait difficile à distinguer.

Nous avons obtenu son enregistrement, représenté par une chaîne. Cette chaîne commence par une lettre, et chaque symbole "~" représente une lettre incertaine.

La longueur de la chaîne ne signifie pas la longueur du nom, car il peut mourir avant de prononcer le nom complet du meurtrier.

La police a fourni une liste de suspects et demande votre aide pour retrouver le meurtrier sur la base de l'enregistrement.

Le résultat doit être une chaîne. S'il n'est pas trouvé, renvoyez une chaîne vide. Si plusieurs sont trouvés, veuillez les renvoyer séparés par des virgules.


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


Remarque :

1. Faites correspondre le nom de chaque suspect, en ignorant le cas.

2. Le code doit être aussi court que possible

Pour l'implémentation suivante, j'ai utilisé des expressions régulières pour remplacer d'abord le symbole "~" dans la chaîne par "." dans le cadre du motif, assorti au nom.


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


Les questions JavaScript ci-dessus sont amusantes pour découvrir le meurtrier. Pour plus de contenu connexe, veuillez prêter attention au site Web PHP chinois (www.php. .cn) !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn