Stränghantering i C# - matcha mönster

Permalänk
Medlem

Stränghantering i C# - matcha mönster

Håller på och jämför två strängar efter matchande mönster från två stycken textboxar.

TextboxA: Blaa blaa blaa
TextboxB: Blaa

Resultat: "aa" förekommer 2 gånger.

Antar att det bästa är skapa en char array och läsa in texten för att sedan jämföra? Går dock bet hur man jämför mönster, enstaka tecken eller hela strängar får jag dock till.

EDIT: dåligt exempel.

Visa signatur

AMD Ryzen 7950x3D | Asus ROG Strix B650E-E | 32GB G.Skill DDR5 6000Hz CL30 | ASUS TUF RX 7900 XTX OC | Cooler Master Tempest GP27U, Dell U2515H

Permalänk
Hedersmedlem

Jag förstår inte ditt exempel, men du vill förmodligen använda reguljära uttryck: http://msdn.microsoft.com/en-us/library/system.text.regularex...

Permalänk
Medlem

Dåligt exempel från min sida, redigerade första inlägget. Jag vill alltså matcha strängarna från textboxB mot testboxA för att se hur många gånger en viss sträng förekommer.

Vill inte använda regexp...

Visa signatur

AMD Ryzen 7950x3D | Asus ROG Strix B650E-E | 32GB G.Skill DDR5 6000Hz CL30 | ASUS TUF RX 7900 XTX OC | Cooler Master Tempest GP27U, Dell U2515H

Permalänk

Kommer faktiskt inte ihåg nu på rak arm om det finns någon inbyggd funktion, det gör det kanske inte.

Det kan ju bli en bra övning i rekursion annars!

kolla String.IndexOf()

Finns A i B, ta bort A ur B, Finns A i nya B, ta bort A ur nya B....

Visa signatur

Nikon D90, Nikon D7000, SB-600, 2xYN-460, Nikkor 18-105mm/3.5-5.6 VR, Nikkor 35mm/1.8, Nikkor 50mm/1.8D, Tamron 70-200/2.8, Tokina 11-16/2.8, Nikon 85/3.5 Macro
Flickr

Permalänk
Medlem

Du måste specificera mer exakt vad som skall räknas. Vi antar att den här metoden heter CountOccurrences:

string a = "abcdddea"; string b = "abcddea"; var occ = CountOccurrences(a, b); // Returnerar Dictionary<string, int> där int är antalet förekomster

"occ" är nu en Dictionary, men vad innehåller den? Detta är det potentiella innehållet:

- a, 2
- ab, 1
- abc, 1
- abcd, 1
- abcdd, 1
- d, 1
- dd, 1 // eller 2, beroende på om du letar mutable eller immutable sets
- de, 1
- dea, 1
- e, 1
- ea, 1