Skip to main content
 首页 » 编程设计

c#之用于提取方括号之间的值的正则表达式

2024年01月25日26me-sa

假设我有以下文本:

“某事 [234][3243]”

我正在尝试将值拉入方括号之间。我想出了以下正则表达式:.*\[(.*)\].* 但这只允许我拉出括号之间的最后一个值,在这个例子中是 3243。如何做我提取所有值,这意味着在我的 Match 对象中获取更多组。

请您参考如下方法:

        string s = "something[234][3243]"; 
        MatchCollection matches = Regex.Matches(s, @"(?<=\[)\d+(?=\])"); 
        foreach (Match m in matches) 
        { 
            Console.WriteLine(m.Value); 
        } 

您可以使用分组括号来执行此操作,但如果您使用回顾和展望,那么您将不需要将组从匹配中拉出。