热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

从已知子串开始提取已知长度的子串

我正在尝试解析具有已知格式的文本文件,但是每一行都不是100%一致。

我正在尝试解析具有已知格式的文本文件,但是每一行都不是100%一致。

文件的每一行都包含以下格式的数据... x03:0xDEADBEEF ... x04:0xDEADBEEF ... x05:0xDEADBEEF ... ect

我希望能够从此字符串中提取特定的x值并将其打印到stdout。

我无法找出执行此字符串搜索的最佳方法,我确定有一个未使用sed的解决方案,希望有人可以提供帮助。

我尝试了使用偏移量进行非常简单的pamaeter扩展,但是发现字符串的格式在每一行上都不完全相同。

我现在已经尝试过:

for line in data.txt; do grep -Po 'x10:[^.]*' $line; grep -Po 'x05:[^.]*' $line; grep -Po 'x06:[^.]*' $line;grep -Po 'x07:[^.]*' $line; done

这似乎将打印所有x10,然后打印所有x05 ect。



这是解决我问题的方法。

let count=1
while read line; do
echo "Test Result: ${count}"
let count=count+1
grep -Po 'x10:[^.]*' <<<"$line"
grep -Po 'x05:[^.]*' <<<"$line"
grep -Po 'x06:[^.]*' <<<"$line"
grep -Po 'x07:[^.]*' <<<"$line"
grep -Po 'x22:[^.]*' <<<"$line"
grep -Po 'x23:[^.]*' <<<"$line"
grep -Po 'x24:[^.]*' <<<"$line"
grep -Po 'x25:[^.]*' <<<"$line"
grep -Po 'x26:[^.]*' <<<"$line"
grep -Po 'x27:[^.]*' <<<"$line"
echo
done


推荐阅读
  • Hadoop MapReduce 实战案例:手机流量使用统计分析
    本文通过一个具体的Hadoop MapReduce案例,详细介绍了如何利用MapReduce框架来统计和分析手机用户的流量使用情况,包括上行和下行流量的计算以及总流量的汇总。 ... [详细]
  • 一、使用Microsoft.Office.Interop.Excel.DLL需要安装Office代码如下:2publicstaticboolExportExcel(S ... [详细]
  • 本文探讨了使用Python实现监控信息收集的方法,涵盖从基础的日志记录到复杂的系统运维解决方案,旨在帮助开发者和运维人员提升工作效率。 ... [详细]
  • Zabbix自定义监控与邮件告警配置实践
    本文详细介绍了如何在Zabbix中添加自定义监控项目,配置邮件告警功能,并解决测试告警时遇到的邮件不发送问题。 ... [详细]
  • 在使用mybatis进行mapper.xml测试的时候发生必须为元素类型“mapper”声明属性“namespace”的错误项目目录结构UserMapper和UserMappe ... [详细]
  • 本文介绍了如何使用 Python 的 Pyglet 库加载并显示图像。Pyglet 是一个用于开发图形用户界面应用的强大工具,特别适用于游戏和多媒体项目。 ... [详细]
  • C/C++ 应用程序的安装与卸载解决方案
    本文介绍了如何使用Inno Setup来创建C/C++应用程序的安装程序,包括自动检测并安装所需的运行库,确保应用能够顺利安装和卸载。 ... [详细]
  • 本文分享了作者在使用LaTeX过程中的几点心得,涵盖了从文档编辑、代码高亮、图形绘制到3D模型展示等多个方面的内容。适合希望深入了解LaTeX高级功能的用户。 ... [详细]
  • 本文详细介绍如何在SSM(Spring + Spring MVC + MyBatis)框架中实现分页功能。包括分页的基本概念、数据准备、前端分页栏的设计与实现、后端分页逻辑的编写以及最终的测试步骤。 ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • ASP.NET 进度条实现详解
    本文介绍了如何在ASP.NET中使用HTML和JavaScript创建一个动态更新的进度条,并通过Default.aspx页面进行展示。 ... [详细]
  • 在Android应用开发过程中,开发者经常遇到诸如CPU使用率过高、内存泄漏等问题。本文将介绍几种常用的命令及其应用场景,帮助开发者有效定位并解决问题。 ... [详细]
  • Go语言实现文件读取与终端输出
    本文介绍如何使用Go语言编写程序,通过命令行参数指定文件路径,读取文件内容并将其输出到控制台。代码示例中包含了错误处理和资源管理的最佳实践。 ... [详细]
  • 数据输入验证与控件绑定方法
    本文提供了多种数据输入验证函数及控件绑定方法的实现代码,包括电话号码、数字、传真、邮政编码、电子邮件和网址的验证,以及报表绑定和自动编号等功能。 ... [详细]
  • Spring Security基础配置详解
    本文详细介绍了Spring Security的基础配置方法,包括如何搭建Maven多模块工程以及具体的安全配置步骤,帮助开发者更好地理解和应用这一强大的安全框架。 ... [详细]
author-avatar
joechl
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有