Ho riscontrato un problema con un po 'di codice. Inserisco un input e il testo in un paragrafo è evidenziato usando <mark>
. Ma quando aggiungo un punto per evidenziare tutti i periodi, il codice si affievolisce e mi dà il codice html e ha delle evidenziazioni casuali. Così ho provato ad aggiungere un sostituto per cambiare i periodi. Ora non impazzirà ma con non evidenzierà nulla. Ecco il mio codice per cercare di sostituire il periodo con il numero di caratteri HTML (.
):Sostituire un punto con carattere HTML
var i = document.getElementById("Bar").value;
var inpu = $.trim(i);
var inp = inpu.replace(".", ".");
var SearchReq = new RegExp("(\\b" + inp + "\\b)", "gim");
var Notes = document.getElementById("NoteHolder").innerHTML;
var after = Notes.replace(SearchReq, "<mark class=" + ColorOptionReady + ">$1</mark>");
document.getElementById("NoteHolder").innerHTML = after;
Qual è il problema con il codice? (Ho provato a rimuovere il "\ b" nel regex ma che non risolvere il problema.)
Quando si crea l'espressione regolare "CercaReq" è necessario sfuggire a caratteri che hanno un significato speciale all'interno di un'espressione regolare. Quindi include periodi, parentesi, parentesi quadre, ecc. Sostituirli con entità html non sarà di aiuto, perché l'html del tuo elemento di paragrafo non include le entità html. – nnnnnn