Heim  >  Artikel  >  Web-Frontend  >  Lustige JavaScript-Frage: Finden Sie den Mörder

Lustige JavaScript-Frage: Finden Sie den Mörder

黄舟
黄舟Original
2017-02-15 14:30:381214Durchsuche

Ein wichtiger Zeuge wurde ermordet, bevor er versuchte, den Namen des Mörders zu nennen, aber seine Stimme war schwach und unterbrochen, was es schwierig machte, ihn zu unterscheiden.

Wir haben seine Aufnahme erhalten, dargestellt durch eine Zeichenfolge. Diese Zeichenfolge beginnt mit einem Buchstaben, und jedes "~"-Symbol stellt einen unbestimmten Buchstaben dar.

Die Länge der Zeichenfolge bedeutet nicht die Länge des Namens, da er möglicherweise stirbt, bevor er den vollständigen Namen des Mörders sagt.

Die Polizei hat eine Liste der Verdächtigen bereitgestellt und bittet Sie um Mithilfe bei der Suche nach dem Mörder anhand der Aufzeichnung.

Das Ergebnis sollte eine Zeichenfolge sein. Wenn keine Zeichenfolge gefunden wird, geben Sie diese bitte durch Kommas getrennt zurück.


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


Hinweis:

1. Ordnen Sie den Namen jedes Verdächtigen zu und ignorieren Sie die Groß-/Kleinschreibung.

2. Der Code sollte so kurz wie möglich sein

Für die folgende Implementierung habe ich reguläre Ausdrücke verwendet, um zuerst das „~“-Symbol innerhalb der Zeichenfolge durch „.“ zu ersetzen als Teil des Musters, abgestimmt auf den Namen.


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


Die oben genannten sind lustige JavaScript-Fragen, um den Mörder herauszufinden. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php .cn)!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn