webForumDet fria alternativet

plocka ut ord eller delar av ord med regexp

JavaScript

0 svar · 274 visningar · startad av vic

Medlem sedan apr. 2006244 inlägg
Frågan#1

Hejsan!

Jag lyckas inte få till utrycket för att plocka ut ord i en text. Låt säga att jag ska plocka ut ordet "apa", då vill jag få detta resultat på följande textsträng

Det var en gång en liten apa! apa? apa. apa, björn-apan sapa tapas lapa. apa apa9 8apa2

Jag har försökt med följande, men något blir fel

function searchAndReplace(searchString, element)
{
	
		
function replacer(m)
{
    var ender = m.split(searchString);
    return ( (typeof(ender[0]) != 'undefined' && ender[0] != m) ? ender[0]:'' ) + "<u>"  +m.replace(ender[0], '').replace(ender[1], '')+ "</u>" + ( (typeof(ender[1]) != 'undefined') ? ender[1]:'' );	
}
	
var regexp = new RegExp("([a-z0-9\.\?\\- ])"+searchString+"([a-z0-9\.\?\\- ])", "gi");
element.innerHTML = element.innerHTML.replace(regexp, function(m){return replacer(m)})		
}

Vet att det finns många duktiga på regexp här inne så jag skulle bli ytterst tacksam om någon skulle ta sig tid och hjälpa en vilsen själ...

// Vic

253 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)