Avatar billede mulse Nybegynder
20. juni 2007 - 11:21 Der er 5 kommentarer og
1 løsning

RegEx.replace()

Hej,
Jeg suger til regex og har derfor brug for lidt hjælp! Jeg står og skal lave en replacement i en tekst(eks.):

string pattern = ???? (her jeg ikke kan få det til at fungere)

string _in = "Md5 i teori og praksis CAPTCHA: et script til at kende forskel på computere Og mennesker! Unik Besøgs tæller uden MySQL Installer Windows XP."

string out = Regex.Replace(_in, pattern, "<b>og</b>", RegexOptions.IgnoreCase)
-------------------------------------
altså skulle out gerne se således ud:
Md5 i teori <b>og</b> praksis CAPTCHA: et script til at kende forskel på computere <b>Og</b> mennesker! Unik Besøgs tæller uden MySQL Installer Windows XP."

Jeg kan jo desvære ikke bruge string .Replace() da den ikke kan ignorere store/små bogstaver - så jeg går ud fra regex er den bedste metode?
Avatar billede dj_uncas Nybegynder
20. juni 2007 - 17:18 #1
Regex klassen er fin til dette formål. String.Replace kalder vist også bare Regex.Replace...

Hvad er det præcists dit regex skal kunne? Skal det bare bytte "og" ud med "<b>og></b>" ? Så kan du bruge følgende:

string out = Regex.Replace( _in, "og", "<b>og</b>", RegexOptions.IgnoreCase );
Avatar billede mulse Nybegynder
28. juni 2007 - 10:33 #2
Jeg skal bruge denne RegEx i forbindelse med en søge funktion, hvor jeg f.eks. søger på "dette". Jeg finder så en tekst op fra en db og viser til en bruger. Jeg skal så i denne tekst erstatte alle "dette"'er med "<b>dette</b>" og ignorer case.
Giver dette mening?
Avatar billede dj_uncas Nybegynder
28. juni 2007 - 13:56 #3
dvs.

public string Search( string input, string searchWord )
{
    return Regex.Replace( input, searchWord, String.Format( "<b>{0}</b>", searchWord ), RegexOptions.IgnoreCase );
}
Avatar billede dj_uncas Nybegynder
28. juni 2007 - 13:58 #4
En anden, måske mere brugbar version:

public string Search( string searchWord )
{
    string textFromDb = Database.Search( searchWord );
    return Regex.Replace( textFromDb, searchWord, String.Format( "<b>{0}</b>", searchWord ), RegexOptions.IgnoreCase );
}
Avatar billede mulse Nybegynder
28. juni 2007 - 14:16 #5
Helt sikkert thx dj uncas / smid et svar

your the man :)
Avatar billede dj_uncas Nybegynder
28. juni 2007 - 14:40 #6
Ja, jeg tænkte nok jeg var en mand - godt du lige fik det på plads :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester