regex - 将正则表达式与 perl/sed/awk 中的变量字符串匹配

标签 regex linux perl awk sed

我有这样的表达:

XX 小时,YY 分钟,ZZ 秒,

XX、YY 或 ZZ 可以是 1 位或 2 位数字。此外,“XX h”或“XX h,YY min”可能不存在。谁能推荐任何 perl 或 sed 表达式来提取 XX YY 和 ZZ??

我尝试了一些匹配组正则表达式,但没有成功。

谢谢

编辑:

示例 1:12 小时 23 分钟 2 秒,

输出 1: 12 23 2

示例 2:3 分钟 59 秒,

输出2:3 59

最佳答案

echo "12 h, 3 min, 56 s," | tr -cd "0-9 "

输出:

12  3  56

echo "12 h, 3 min, 56 s," | tr "," "\n" | awk '/h/ {print $1}'

12

echo "12 h, 3 min, 56 s," | tr "," "\n" | awk '/min/ {print $1}'

3

echo "12 h, 3 min, 56 s," | tr "," "\n" | awk '/s/ {print $1}'

56

关于regex - 将正则表达式与 perl/sed/awk 中的变量字符串匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26433367/

相关文章:

regex - 使用linux查找和替换

python - 当需要在 python 中将字符串分割成单词时使用 re.findall

linux - 强制 GCC 静态链接,例如pthreads(而不是动态链接)

linux - 何时以及如何在 shell 脚本中使用嵌套命令替换

javascript - 带有\x 转义序列的 JS 正则表达式在 Firefox 中不起作用

java - 通过 Regex 表达式的 Hibernate 查询过滤器

mysql - 如何更多地了解 MySQL、Apache 和 .htaccess?

perl - 在perl中比较多维哈希的最佳方法

perl - 是否有 CPAN Perl 模块来查找主机上的总/已用/可用内存(无需通过 system() 调用运行命令行)?

perl - 直接访问 DBI 有什么问题?