Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 这些表达式的regex帮助_C#_Regex - Fatal编程技术网

C# 这些表达式的regex帮助

C# 这些表达式的regex帮助,c#,regex,C#,Regex,我正试图用c来编辑一些文本。我需要有关正则表达式的帮助来匹配此表达式。这是我想读的一个例子。这是发票上的 Date 2016.03.09 ItemMaterial NumberDescriptionOrder qty.UnitUnit PriceTotalPrice00010A17NT1each29.3829.661-1ADAPTER0002c2022each14.141414-IB4 POINTINPUT00031-9iAV3each29.9929.99-9iAV3 desciption wh

我正试图用c来编辑一些文本。我需要有关正则表达式的帮助来匹配此表达式。这是我想读的一个例子。这是发票上的

Date 2016.03.09 ItemMaterial NumberDescriptionOrder qty.UnitUnit PriceTotalPrice00010A17NT1each29.3829.661-1ADAPTER0002c2022each14.141414-IB4 POINTINPUT00031-9iAV3each29.9929.99-9iAV3 desciption which is awesome00019540005-011each1,010.00 1,010.00Long description of part which is 27.89 MM by 78.22"Total price inbefore applicable taxes4000.00
这很难理解,因此这里是总结:

date20.03.2016 ===> should select nothing
each29.7530.651222 ===> should select 29.7530.65
each20,0009.752000,30.851222 ===> should select 20,0009.752000,30.85
each2,020,0009.752000,30.851222 ===> should select 2,020,0009.752000,30.85
each2,020,0009.752000,30.851222 ===> should select 2,020,0009.752000,30.85
each219.00219.00JJJJ1222 ===> should select 219.00219.00
the term for each is 29 days. item is great.22 days to  be shipped ===> should select nothing
the warranty for each 29 days. item is great.22 days to  be shipped ===> should select nothing
我想做一个regex替换,并将这些表达式转换为eachDELETEDDELETED。我尝试了下面的正则表达式,到目前为止没有任何结果

@"each(.*?).(.*?).\d{1,2}");
@"each\d *,*\d.\d *,*\d *,*\d.\d{1,2}");
@"each\d,*\d,*\d.\d,*\d,*\d.\d{1,2}");

有许多正则表达式与上面的注释中的示例相匹配

^each(.+\.\d{1,2})
可以工作,但也可以捕获每个部分,如果您不想捕获该部分,可以这样使用:

然而,当我在上面的例子中运行时,它仍然捕获了您最后两句话中的值

@"(?<=each)(((\d*[,|.]\d{1,2}))*)"
给出问题中每个示例所需的输出


我希望这有帮助

应选择…-用英语解释为什么这些模式应该匹配,那么编写正则表达式就很简单了。它们都有单词和两个小数点。在第二个小数点后,我只需要后面的两位数。COMA是可选的。假设这些是正在重新定义的价格。举一个输入的例子,从每个输入开始,它不应该选择任何内容?除了每行开头的规则外,还有什么规则?文本来自invoice@JinJoe和这对我们意味着什么?
@"(?<=each)(((\d*[,|.]\d{1,2}))*)"