c# - 使用 C# 删除分隔符

标签 c# c#-3.0 delimiter

我有一个字符串如下:

{a{b,c}d}

如果我给 1,字符串必须显示为:

{a d} 

内括号内的内容应该连同大括号一起删除。

有人可以帮我吗?

最佳答案

要提取 {} 的内部分组,请使用以下正则表达式:

string extract = Regex.Replace(source, "\{\w(\{\w,\w\})\w\}", "$1");

实际上,如果你想删除逗号....

string extract = Regex.Replace(source, "\{\w\{(\w),(\w)\}\w\}", "{$1 $2}");

提取外部而不进行内部分组:

string extract = Regex.Replace(source, "(\{\w)\{\w,\w\}(\w\})", "$1 $2");

如果在您的示例中 a、b、c、d 不是字面上的单个字符,即字母组甚至空格等,请将 \w 替换为 \w+甚至 .*

根据您对嵌套的评论....

string extract = Regex.Replace(source, "(\{\w)\{.*\}(\w\})\w*", "$1 $2");

关于c# - 使用 C# 删除分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3369885/

相关文章:

c# - Windows 8.1 通用应用 WebClient 替换

c# - .net 库不从 app.config 中选择 key

c#-3.0 - 使用 C# 在多个线程中读取多个文件,慢!

检索 fread 使用的列分隔符

MySQL - 分隔符错误

python - Pandas 读取了分隔的 txt 文件的一部分

c# - 如何使用 nhibernate/lightcore 注册两个数据库连接?

c# - 如何从 PRISM 中的区域获取 View ?

c# - .NET N 层架构 : What do I do about the Model objects?

c# - 将数据保存到文本文件并将其加载到 C# 中的数据网格中