C# 获取字符串中两个字符之间的字符串

标签 c# string split

我有一个如下的字符串:

{{"textA","textB","textC"}}

目前,我正在使用下面的代码来拆分它们:

string stringIWantToSplit = "{{\"textA\",\"textB\",\"textC\"}}";
string[] result = stringIWantToSplit.Split(',');

我可以得到以下结果:

{{"textA"
"textB"
"textC"}}

之后,我可以手动删除'{'和'}'以获得最终结果,但问题是:

如果字符串如下:

   `{{"textA","textB,textD","textC"}}`

那么结果会和预期的结果不一样

预期结果:

  "textA" 
  "textB,textD"
  "textC"

实际结果:

{{“textA” "文本B 文本D" “textC”}}

如何获取两个双引号之间的字符串?


更新:

刚才查资料的时候发现有些是小数点即

{{"textA","textB","",0,9.384,"textC"}}

目前,我正在尝试使用 Jenish Rabadiya 的方法,我使用的正则表达式是

(["'])(?:(?=(\\?))\2.)*?\1

但是使用这个正则表达式,没有选择数字,如何修改它以便可以选择数字/小数?

最佳答案

尝试像下面这样使用正则表达式。

Regex regex = new Regex(@"([""'])(?:(?=(\\?))\2.)*?\1");
foreach (var match in regex.Matches("{{\"textA\",\"textB\",\"textC\"}}"))
{
    Console.WriteLine(match);
}

这里正在工作 dotnet fiddle => Link

关于C# 获取字符串中两个字符之间的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28336320/

相关文章:

python - 拆分没有 str 属性的 pandas 列对象

C++文件IO和分隔符拆分

c# - 如何使用 Orchard CMS 创建推荐页面?

c# - 正确处理用户信息,ASP.NET是怎么做到的?

c - 琴弦不能正常工作

python - 如何将现有字符串的一部分保存在新列中

c# - If语句不能改变局部变量

c# - 创建 TFS 自定义 checkin 策略 : Check Comment if it contains certain string

c - 如何将 char 数组转换为 C 中的函数指针?

javascript - 如何使用 PHP 分割字符串?