繁体   English   中英

正则表达式只匹配冒号后的小数

[英]regex to match only decimals after a colon

我真的很亲密,但我不是正则表达式专家。 这是我的输入字符串。

DCIN  : 11.896V
5V    :  4.988V
Vcom  :  0.008V
5VStby:  4.992V
48V   :  0.042V
48I   :    0mA

我只需要冒号后面的数值。 这就是我到目前为止

/[^\D]+\.?[^\D]+/

而且它同时捕获了两个48个实例,但没有得到0

您的正则表达式至少需要2位数字,这就是为什么它与最后一行的零不匹配的原因,并且您的模式没有限制,只能在冒号之后匹配。

采用

var res = Regex.Matches(s, @":\s*(\d*\.?\d+)")
     .Cast<Match>()
     .Select(m=>m.Groups[1].Valu‌​e)
     .ToList();

正则表达式演示

详细资料

  • :\\s* -一个冒号和零个或多个空格
  • (\\d*\\.?\\d+) -捕获包含所需值的组1:
    • \\d* -零个或多个数字
    • \\.? -可选点
    • \\d+ -一个或多个数字。

在此处输入图片说明

我愿意做这个

^[^:]*:\s*(\d+(?:\.\d*)?)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM