Avatar billede new2the Nybegynder
02. juli 2007 - 04:44 Der er 5 kommentarer og
1 løsning

placering i streng

er der nogen der kan hjælpe mig med at finde placeringen af ord i en streng anden gang det forekommer ?
Avatar billede arne_v Ekspert
02. juli 2007 - 05:25 #1
Til inspiration:

using System;
using System.Text.RegularExpressions;

namespace E
{
    public class MainClass
    {
        public static int XIndexOf(string s, string w)
        {
            Regex re = new Regex("^(.*?)[ .,](" + w + ")[ .,](.*?)[ .,](" + w + ")[ .,](.*?)$");
            return re.Match(s).Groups[4].Index;
        }
        public static void Main(string[] args)
        {
            string s = "Dette er en lille test med ordet en to gange";
            string w = "en";
            Console.WriteLine(s.IndexOf(w, s.IndexOf(w) + 1));
            Console.WriteLine(XIndexOf(s, w));
            Console.ReadLine();
        }
    }
}
Avatar billede new2the Nybegynder
02. juli 2007 - 08:04 #2
så blev jeg inspireret og fik det til at virke , men hvordan kan man søge efter en streng der indeholdr tegnet "  at udskifte med ' godkendes men finder ingenting.
Avatar billede new2the Nybegynder
02. juli 2007 - 15:31 #3
/"

smid et svar arne
Avatar billede arne_v Ekspert
02. juli 2007 - 15:40 #4
svar
Avatar billede clausc Nybegynder
03. juli 2007 - 12:53 #5
Med al respekt for Arnes løsning, så synes jeg den er overkill.

string your_string = "en test en hest";
string search = " en "; // spaces fordi du leder efter et ord

int idx = your_string.IndexOf(search);
if (idx != -1)
  idx = your_string.IndexOf(search, idx + 1);

return idx; // idx == -1 : ordet findes ikke; eller findes ikke to gange
            // idx != -1 : position af ordet
Avatar billede arne_v Ekspert
03. juli 2007 - 13:35 #6
Rent faktisk er det ca. det samme jeg udregner iÆ
  Console.WriteLine(s.IndexOf(w, s.IndexOf(w) + 1));

Pointen ved regexen er at den ikke kun understoetter mellemrum foer og efter ordet
men ogsaa kan klare punktum og komma (og det er nemt at tilfoeje flere),
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