首页 > 解决方案 > 有没有办法使用 C# 正则表达式获取字符串中字符内的文本?

问题描述

到目前为止,这是我制作的样本。我真正完成的是将每个文本都放在 Open Curly "{" 和 Closing Curly "}" 大括号内。

示例文本:

var sampleText = {Id:11} this is a sample text {Id:11} > {Id:12} > {Id:      13} text.

代码:

var ans12 = Regex.Match(sampleText, @"{(.*?)}");

实际输出:失败

Id:11

需要输出:是通过

Id:11
Id:11
Id:12
Id:13

标签: c#

解决方案


使用该Rex.Matches方法,它将返回与正则表达式匹配的对象集合。每个都将具有 .Value 和 .Index 的属性。所以你的代码变成:

var ans12 = Regex.Matches(sampleText, @"{(.*?)}");

现在您需要遍历集合:

foreach (var match in ans12)
{

    Console.WriteLine(match.Value);
}

推荐阅读