regex - PowerShell 正则表达式来挑选耗时

标签 regex powershell scripting

我是 powershell 脚本的新手,对 Regex 不是很好... 我想创建一个正则表达式,从以下文本文件中挑选出时间...

gfskf dakdshadk daksdkdahkd daksdhasdkh () zadf sflh f.d/sd lhlfhlj f 12hrs:10mins:05sec fsfsf fsfjhsfjh

我想让小时数为 12,分钟数为 10,秒数为 5。

$hour= [regex]::match($line,$hour_regex).Groups[1].Value
$mins= [regex]::match($line,$mins_regex).Groups[1].Value
$sec= [regex]::match($line,$sec_regex).Groups[1].Value

所以基本上我需要三个正则表达式来从文件中提取相关数据。

提前致谢!

最佳答案

使用一个正则表达式:

$r = '(\d+)hrs:(\d+)mins:(\d+)sec'
$i = 'hlfhlj f 12hrs:10mins:05sec fsfsf f'
$result = [regex]::match($i,$r)
$hour = $result.Groups[1].Value
$mins = $result.Groups[2].Value
$sec = $result.Groups[3].Value

关于regex - PowerShell 正则表达式来挑选耗时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17363683/

相关文章:

c# - 用于从 Kubernetes Pod 名称解析部署或作业名称的正则表达式

java - 流集中的正则表达式

powershell - 使用 PowerShell 创建 CCNet 服务器上所有项目的列表

shell - shell脚本中的全局环境变量

Vim 脚本突出显示大括号等标签的结尾

regex - "Multiple pass"用于修复空格缩进的正则表达式

java - 您能否修复此 Java 正则表达式以匹配货币,例如 -10 USD、12.35 AUD ...(Java)?

windows - 实时监控Windows中日志文件中的错误

Powershell BitsTransfer 未完成

user-interface - 从 Web GUI 远程执行交互式 shell 脚本