C# 搜索数据并在此相同的字符串数据中将一个数据合并到另一个数据

C# 搜索数据并在此相同的字符串数据中将一个数据合并到另一个数据,c#,string,C#,String,有一些字符串: 101,13,1237511722,97,13,1217515162,-9,17,-9,15,14,13,1227515813,[“ID”,“31477164”,“2000.00”,“100.00000000”,“36477059”,“2020-11-02T18:52:50”,“23477065”] 我必须查找不带“”的数字,并将它们与“”中的数字合并。 我的数字没有“.”,并且超过3个字符。 应该是这样的: 37511722,"31477164" 17515

有一些字符串:

101,13,1237511722,97,13,1217515162,-9,17,-9,15,14,13,1227515813,[“ID”,“31477164”,“2000.00”,“100.00000000”,“36477059”,“2020-11-02T18:52:50”,“23477065”]

我必须查找不带“”的数字,并将它们与“”中的数字合并。 我的数字没有“.”,并且超过3个字符。 应该是这样的:

37511722,"31477164"
17515162,"36477059"
27515813,"23477065"
有人能帮我吗?

你的问题不清楚,你的号码太多了;然而,如果你真的想

…必须查找不带
正整数(至少4位长),并将它们与
中的数字组合在一起

如果(粗体)条件是我的,您可以尝试使用正则表达式左、右数字进行匹配;对于给定数据:

 string data = "101,13,12,37511722,97,13,12,17515162,-9,17,-9,15,14,13,12,27515813,[\"ID_DYSPOZYCJI\",\"31477164\",\"2000.00\",\"100.00000000\",\"36477059\",\"2020 - 11 - 02T18: 52:50\",*\"23477065\"*] ";
您可以将
匹配如下:

  using System.Linq;
  using System.Text.RegularExpressions;

  ...

  var left = Regex
    .Matches(data, @"[0-9]{4,}")
    .Cast<Match>();
   
  var right = Regex
    .Matches(data, @"\""[0-9]{4,}\""")
    .Cast<Match>();
我们来看看,

  Console.Write(report);
结果:

37511722,"31477164"
17515162,"36477059"
27515813,"23477065"

你的要求一点也不清楚。例如,
101
也不在引号中。你为什么不用那个?或
13
12
。最上面一行中的数字都没有引号。StackOverflow不是代码编写服务。这个编程问题的哪一部分你有困难?解析输入?过滤结果?显示您编写的代码,并解释其行为如何不是您想要完成的。我没有,但我想有人会给我一个想法。我的数字超过3个字符,它们只是数字或带“.”的数字。@Wojciech:如果要匹配的数字保证有
4
数字(不包括
101
),我们可以在模式中将
8
更改为
4
。看我的编辑这对我来说是新知识!非常感谢你!
37511722,"31477164"
17515162,"36477059"
27515813,"23477065"