c# - 如何获取所有字符串格式参数

标签 c# .net string parameters string-formatting

有没有办法获取字符串的所有格式参数?

我有这个字符串:“{0} test {0} test2 {1} test3 {2:####}” 结果应该是一个列表: {0} {0} {1} {2:####}

.net 中是否有支持此功能的内置功能?

最佳答案

我没有听说过这样的内置功能,但您可以试试这个(我假设您的字符串包含以数字开头的标准格式参数):

List<string> result = new List<string>();
string input = "{0} test {0} test2 {1} test3 {2:####}";
MatchCollection matches = Regex.Matches(input, @"\{\d+[^\{\}]*\}");
foreach (Match match in matches)
{
    result.Add(match.Value);
}

它返回列表中的 {0} {0} {1} {2:####} 值。对于 tehMick 的字符串,结果将是一个空集。

关于c# - 如何获取所有字符串格式参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2721443/

相关文章:

c# - 获取插入值的主键

c# - .NET 数组的开销?

java - String 的 char 表示形式是否不同且固定?

c# - 如何在 gridview 的 boundfield 列中换行文本

c# - 如何在 C# 中表达 VB .NET "Aggregate Into"?

c# - 使用 .NET 3.5 的 Visual Studio 2010 项目似乎允许 System.Xml 中的方法只能从 .NET 4.0 获得

c# - HttpBrowserCapabilities缺少一些信息?

swift - swift 中带有表情符号的子字符串

C: strchr() 和 index() 的区别

c# - 为什么Form需要设置为null?