and*_*ubi -1 c# regex string-parsing
如何从具有更多字符的字符串中提取可能具有指数的多个double类型?
例如提取物56.8671311035e-06从
"这是一个数字在56.8671311035e-06内的字符串,字符串在这里继续"
我想可以使用正则表达式完成,但我对它们的了解非常有限.
是的,我会说正则表达式是你的朋友:
var match = Regex.Match(input, @"[0-9.]+e[-+][0-9]+");
Run Code Online (Sandbox Code Playgroud)
或者,您可以使用以下内容防止匹配多个小数点(最后一个将被视为"正确"小数点):
@"\b[0-9]+(.[0-9]+)e[-+][0-9]+\b"
Run Code Online (Sandbox Code Playgroud)
编辑:这是一个更完整的,允许可选的指数,并允许小数点位于数字的开头:
@"[\d]*\.?[\d]+(e[-+][\d]+)?"
Run Code Online (Sandbox Code Playgroud)