用JavaScript解析日志
我只需要从以下内容中提取40:37.298s:用JavaScript解析日志,javascript,regex,parsing,logging,Javascript,Regex,Parsing,Logging,我只需要从以下内容中提取40:37.298s: Total time: 40:37.298s 使用JS,但我是JS新手,有人能帮我吗 > 'Total time: 40:37.298s'.substr(12) '40:37.298s' 如果您想使用正则表达式以获得更大的灵活性: > /([0-9]+:[0-9]+\.[0-9]+s)/.exec('Total time: 40:37.298s')[1] '40:37.298s' 如果您想使用正则表达式以获得更大的灵活性: >
Total time: 40:37.298s
使用JS,但我是JS新手,有人能帮我吗
> 'Total time: 40:37.298s'.substr(12)
'40:37.298s'
如果您想使用正则表达式以获得更大的灵活性:
> /([0-9]+:[0-9]+\.[0-9]+s)/.exec('Total time: 40:37.298s')[1]
'40:37.298s'
如果您想使用正则表达式以获得更大的灵活性:
> /([0-9]+:[0-9]+\.[0-9]+s)/.exec('Total time: 40:37.298s')[1]
'40:37.298s'
子字符串方法就是您要查找的:
"Total time: 40:37.298s".substring("Total time: ".length);
子字符串方法就是您要查找的:
"Total time: 40:37.298s".substring("Total time: ".length);
有很多方法可以做到这一点。这里有一个:
var str = "Total time: 40:37.298s";
str.split(": ")[1]
在大多数情况下,我更喜欢在某些已知轴上进行拆分,而不是像其他人所显示的那样尝试提取特定的子字符串,原因如下:
它更灵活;如果字符串的第一部分包含微小的变化,但子字符串方法不会,那么这仍然有效
查看提取的内容更容易,但substring方法要求我手动计算字符串中的位置,以验证我选择的内容是否正确
有很多方法可以做到这一点。这里有一个:
var str = "Total time: 40:37.298s";
str.split(": ")[1]
在大多数情况下,我更喜欢在某些已知轴上进行拆分,而不是像其他人所显示的那样尝试提取特定的子字符串,原因如下:
它更灵活;如果字符串的第一部分包含微小的变化,但子字符串方法不会,那么这仍然有效
查看提取的内容更容易,但substring方法要求我手动计算字符串中的位置,以验证我选择的内容是否正确
即:
\d{1,2}一位或两位数字
\“:”字符
\d{2}两位数字
. “.”字符
\d{3}三位数字
“s”字符是什么
即:
\d{1,2}一位或两位数字
\“:”字符
\d{2}两位数字
. “.”字符
\d{3}三位数字
“s”字符是什么
我会说使用像[:\.0-9]*s这样的正则表达式 比如说
yourText.match("regex")
在你的情况下是这样的
"Total time: 40:37.298s".match("[:\.0-9]*s")[0]
它将返回40:37.298s我想使用像[:\.0-9]*s这样的正则表达式 比如说
yourText.match("regex")
在你的情况下是这样的
"Total time: 40:37.298s".match("[:\.0-9]*s")[0]
它将返回40:37.298s注意,Regexp.exec将数组中的匹配项分配给res,因此要从上面的代码中获取实际匹配值,您需要查询res[0]。注意,Regexp.exec将数组中的匹配项分配给res,因此要从上面的代码中获取实际匹配值,您需要查询res[0]。