我有一个小问题。

我使用[0-9\,.]*
查找字符串中的小数。
然后([^\s]+)查找第一个数字后面的文本。

该字符串通常看起来像这样。 1个数字,而不是日期:

1.023,45斯图克

2010年5月24日

但有时我只有日期,然后我变成240510(十进制)。
有时我只有小数点。

如何修改正则表达式以查找日期(如果存在)并将其删除?
然后查找一个小数,如果存在则选择一个。

提前致谢。

最佳答案

分而治之


首先检查日期,然后从字符串中删除匹配项

([0-9]{1,2}\.){2}[0-9]{1,2}
使用您的原始正则表达式查找号码

[0-9\,.]*
如果需要,请找到数量单位(假设umlaut仅将其设为小写)

([a-zü]+)


有关处理正则表达式的一些有用信息和工具,请参见http://regexe.de/(德语)和http://www.regexr.com/(英语)。

关于c# - 使用正则表达式忽略带有数字的字符串中的日期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29996500/

10-12 00:13
查看更多