regex - RegEX 从 shell 脚本中的字符串中获取必填字段
问题描述
我得到了一个字符串,如下所示。
report="Reading trace file coverage/lcov.info Summary coverage rate: lines......: 80.5% (4900 of 6090 lines) functions..: no data"
echo The value of variable = $report
添加我只想在其中解析“80.5”并存储在shell脚本变量中。
解决方案
使用 bash 和正则表达式:
[[ "$report" =~ :\ ([0-9.]+)% ]] && echo "${BASH_REMATCH[1]}"
此正则表达式 ( :\ ([0-9.]+)%
) 描述了一个子字符串,该子字符串包含一个冒号和一个空格,然后是至少一个数字或点 ( [0-9.]+
) 字符,然后是一个百分号。圆括号之间匹配的部分被带入数组 BASH_REMATCH 的字段 1。
输出:
80.5
请参阅:堆栈溢出正则表达式常见问题解答
推荐阅读
- graphql - 如何在 Hotchocolate 10.4.3 中设置执行超时
- python - 为 pytorch.nn.lstm 批量训练创建批处理的正确方法
- r - 使用 rvest 从 html 表中检索链接
- java - 打包在 jar 中时 Spring Boot 休息控制器不起作用
- python-3.x - 如何将变量转换为原始字符串?
- aws-lambda - 聆听 Alexa 技能包中的响应
- html - flexbox 中的图像,100% 高度太大
- python - 设置 pyenv 时,找不到 eval 命令
- javascript - 使用快速服务器时,我的 CSS 代码在 Chrome Dev 上为空
- c++ - 指向向量第一个元素的指针与该向量的 back_inserter() 有何不同?