2016-10-29 3 views
0

Ich weiß nicht, wie man mit Großbuchstaben in diesem Eingabetext ersetzen, zum Beispiel möchte ich fett die Buchstaben, die sie sind de auf dem Eingang, aber wenn Großbuchstaben nicht setzen nicht auf fettErsetzen Vergleich mit Großbuchstaben auf Javascript

das ist mein Codezeile $texto_option = $texto_option.replace($(input).val(),'<b>'+$(input).val()+'</b>');

Here you can see my problem

Antwort

1

generieren Sie einen regulären Ausdruck, der die Buchstaben Fall ignoriert:

var search = $(input).val(); 
var re = new RegExp(search, "i"); 
$texto_option = $texto_option.replace(re, "<b>$&</b>"); 

Dies ist eine einfache Antwort. Aber bedenken Sie, dass Ihre Eingabe hygienisiert werden muss, da einige Zeichen Steuerzeichen für reguläre Ausdrücke zu:

search = search.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"); 
+0

wow, die 99% der mein Problem gelöst, ich danke Ihnen so sehr, aber ich möchte die erste haben Großbuchstabe, könnten Sie mir helfen? –

+0

@PaulNoris Sicher, ich habe die Antwort so bearbeitet, dass jetzt die erfasste Zeichenkette und nicht die eingefügte Zeichenkette ausgedruckt wird. – MaxArt

+0

Sie müssen nicht alle diese Zeichen in einer Zeichenklasse entkommen lassen. '[- [\] \/{}() * +?. \\^$ |]' Ich denke, es würde funktionieren. – chris85