簡體   English   中英

在C#中使用正則表達式分割字符串

[英]Dividing a string using regular expression in C#

我有一個像這樣的字符串:

"John William Doe 250 / 1000 Adam Smith 500 / 1000 Jane Black 250 / 1000"

如您所見,該字符串由人們的姓名和他們的股份組成。 可以有任意數量的人(和共享),並且人的名字可以由任意數量的單詞組成。

我如何將這個字符串分成三個這樣的字符串:

"John William Doe 250 / 1000"
"Adam Smith 500 / 1000"
"Jane Black 250 / 1000"

我知道我需要使用正則表達式,但我自己做不到。 任何幫助表示贊賞。 謝謝。

([a-zA-Z ]*)*[0-9]* \\/ [0-9]*

您首先要尋找帶有空格的名稱,然后重復這些名稱。

您繼續輸入數字,斜杠和其他數字

注意空格。

我知道這不是一個難題,注釋中已經有一些答案,我仍然想為OP粘貼代碼:

    static void Main(string[] args)
    {
        string all = @"John William Doe 250 / 1000 Adam Smith 500 / 1000 Jane Black 250 / 1000";
        Regex r = new Regex(@"(?:\w+\s+)+\d+\s+/\s+\d+");
        foreach (Match m in r.Matches(all))
        {
            Console.WriteLine(m.Groups[0]);
        }
        Console.ReadLine();
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM