Jey*_*thi 1 c# delimiter c#-3.0
我有一个字符串如下:
{a{b,c}d}
Run Code Online (Sandbox Code Playgroud)
如果我给1,则字符串必须显示为:
{a d}
Run Code Online (Sandbox Code Playgroud)
内括号内的内容应与大括号一起移除.
任何人都可以帮助我吗?
要提取{}的内部分组,请使用以下正则表达式:
string extract = Regex.Replace(source, "\{\w(\{\w,\w\})\w\}", "$1");
Run Code Online (Sandbox Code Playgroud)
实际上,如果你想删除逗号....
string extract = Regex.Replace(source, "\{\w\{(\w),(\w)\}\w\}", "{$1 $2}");
Run Code Online (Sandbox Code Playgroud)
在没有内部分组的情况下提取外部:
string extract = Regex.Replace(source, "(\{\w)\{\w,\w\}(\w\})", "$1 $2");
Run Code Online (Sandbox Code Playgroud)
如果在你的例子中a,b,c,d不是字面上的单个字符,那就是字母组甚至空格等,用\ w +或者甚至替换\ w .*
基于你对嵌套的评论....
string extract = Regex.Replace(source, "(\{\w)\{.*\}(\w\})\w*", "$1 $2");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1154 次 |
| 最近记录: |