Heim > Backend-Entwicklung > C++ > Wie kann ich einen String in C# effizient in Blöcke einer bestimmten Größe aufteilen?

Wie kann ich einen String in C# effizient in Blöcke einer bestimmten Größe aufteilen?

Patricia Arquette
Freigeben: 2025-01-27 01:31:09
Original
960 Leute haben es durchsucht

How Can I Efficiently Split a String into Chunks of a Specified Size in C#?

C#String Effiziente Blockverarbeitung

Bei der Programmierung sind Stringoperationen sehr häufig. Dieser Artikel enthält eine umfassende Lösung.

Angenommen, wir haben die folgende Zeichenfolge:

Unser Ziel ist es, es in einen Block von 4 zu unterteilen, um das folgende Sub -String zu erhalten:
<code>string str = "1111222233334444";</code>
Nach dem Login kopieren

Verwenden Sie die C#-Segment -Zeichenfolge
<code>"1111"
"2222"
"3333"
"4444"</code>
Nach dem Login kopieren

c#bietet eine leistungsstarke String -Betriebsmethode. Methode kann eine Ganzzahlsequenz innerhalb des angegebenen Bereichs erzeugen. In Kombination mit können wir eine elegante Lösung erstellen:

Enumerable.Range Code detaillierte Erläuterung Enumerable.Select

<code class="language-csharp">static IEnumerable<string> Split(string str, int chunkSize)
{
    return Enumerable.Range(0, str.Length / chunkSize)
        .Select(i => str.Substring(i * chunkSize, chunkSize));
}</code>
Nach dem Login kopieren

generieren Sie eine Ganzzahlsequenz von 0 bis . Jede Ganzzahl stellt einen Startindex eines Blocks dar.

Wenden Sie einen Lambda -Ausdruck auf jedes Element in der Sequenz an. Hier beginnt der Lambda -Expression
    mit einer Sub -String von
  • aus dem Index Enumerable.Range(0, str.Length / chunkSize). str.Length / chunkSize - 1
  • Das Ergebnis ist ein
  • , das einen Segmentierungsblock enthält. Select i => str.Substring(i * chunkSize, chunkSize) i * chunkSize abnormale Behandlung chunkSize
  • Diese Lösung behandelt effektiv die häufigsten Situationen. Es müssen jedoch einige Anomalien berücksichtigt werden, wie: IEnumerable<string>
leere oder leere Zeichenfolge Eingabe

0

Strough Länge kann nicht

dividieren

sein
  • In praktischen Anwendungen benötigt es zusätzlichen Code, um diese abnormalen Bedingungen zu bewältigen. Die spezifische Verarbeitungsmethode hängt von der spezifischen Szene ab, und dieser Artikel erklärt nicht im Detail.
  • Zusammenfassung chunkSize
  • Die hierin bereitgestellte Lösung bietet eine umfassende Methode, um die Zeichenfolge in eine bestimmte Größe der Größe zu unterteilen. Seine Einfachheit und Effizienz machen es zu einem kostbaren Werkzeug in der String -Betriebsaufgabe. Durch die Betrachtung der abnormalen Situation und das Anpassen der Lösung entsprechend den spezifischen Bedürfnissen können sie sich an einen breiteren Bereich von Szenen anpassen. chunkSize

Das obige ist der detaillierte Inhalt vonWie kann ich einen String in C# effizient in Blöcke einer bestimmten Größe aufteilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage