10.6 Einen Tokenizer implementieren

Problem

Sie brauchen einen Tokenizer, um Strings in ihre Bestandteile zu zerlegen. Er muss dazu in der Lage sein, einen String auf Basis einer wohldefinierten Menge von Zeichen zu zerlegen.

Lösung

Mit der Split-Methode der Regex-Klasse können Sie reguläre Ausdrücke verwenden, um die Typen der Token und Trennzeichen anzugeben, die Sie festhalten wollen. Diese Technik funktioniert bei Gleichungen besonders gut, weil die Token von Gleichungen wohldefiniert sind. Betrachten Sie beispielweise folgenden Code:

using System;
using System.Text.RegularExpressions;

public static string[] Tokenize(string equation)
{
    Regex RE = new Regex(@"([\+\-\*\(\)\^\\])");
    return (RE.Split(equation));
}

Er teilt einen String anhand des regulären ...

Get C# Kochbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.