20121112grep正则表达式的使用

本文详细介绍了grep命令及其正则表达式的使用方法,包括基本的元字符集、锚定行开始与结束、字符范围匹配等功能,帮助读者掌握文本搜索技巧。

grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。Unix的grep家族包括grep、egrep和fgrep。

  1. grep正则表达式元字符集(基本集):

^
  锚定行的开始
  如:’^test_str’匹配所有以test_str开头的行。

**∗∗  锚定行的结束  如:′teststr**   锚定行的结束   如:'test_str    teststr'匹配所有以test_str结尾的行。

.
  匹配一个非换行符的字符
   如:'test_.tr’匹配test_后接一个任意字符,然后是tr。

*****
  匹配零个或多个先前字符
   如:’ test_str’ (注意前有空格)匹配所有一个或多个空格后紧跟test_str的行。
   .*一起用代表任意字符。

[]
  匹配一个指定范围内的字符,
   如’[Tt]est_str’匹配Test_str和test_str。

[^]
  匹配一个不在指定范围内的字符,
   如:’[^A-FH-Z]rep’匹配不包含A-F和H-Z的一个字母开头,紧跟rep的行。

(…)
  标记匹配字符,
   如’(love)’,love被标记为1。

<
  锚定单词的开始,如:’<test_str’匹配包含以test_str开头的单词的行。

>
  锚定单词的结束,如’test_str>'匹配包含以test_str结尾的单词的行。

x{m}
  重复字符x,m次,如:'o{5}'匹配包含5个o的行。

x{m,}
  重复字符x,至少m次,如:'o{5,}'匹配至少有5个o的行。

x{m,n}
  重复字符x,至少m次,不多于n次,如:'o{5,10}'匹配5–10个o的行。

\w
  匹配文字和数字字符,也就是[A-Za-z0-9],如:'G\w*p’匹配以G后跟零个或多个文字或数字字符,然后是p。

\W
  \w的反置形式,匹配一个或多个非单词字符,如点号句号等。

\b
  单词锁定符,如: '\bgrep\b’只匹配grep。

内容概要:本文设计了一种基于PLC的全自动洗衣机控制系统内容概要:本文设计了一种,采用三菱FX基于PLC的全自动洗衣机控制系统,采用3U-32MT型PLC作为三菱FX3U核心控制器,替代传统继-32MT电器控制方式,提升了型PLC作为系统的稳定性与自动化核心控制器,替代水平。系统具备传统继电器控制方式高/低水,实现洗衣机工作位选择、柔和过程的自动化控制/标准洗衣模式切换。系统具备高、暂停加衣、低水位选择、手动脱水及和柔和、标准两种蜂鸣提示等功能洗衣模式,支持,通过GX Works2软件编写梯形图程序,实现进洗衣过程中暂停添加水、洗涤、排水衣物,并增加了手动脱水功能和、脱水等工序蜂鸣器提示的自动循环控制功能,提升了使用的,并引入MCGS组便捷性与灵活性态软件实现人机交互界面监控。控制系统通过GX。硬件设计包括 Works2软件进行主电路、PLC接梯形图编程线与关键元,完成了启动、进水器件选型,软件、正反转洗涤部分完成I/O分配、排水、脱、逻辑流程规划水等工序的逻辑及各功能模块梯设计,并实现了大形图编程。循环与小循环的嵌; 适合人群:自动化套控制流程。此外、电气工程及相关,还利用MCGS组态软件构建专业本科学生,具备PL了人机交互C基础知识和梯界面,实现对洗衣机形图编程能力的运行状态的监控与操作。整体设计涵盖了初级工程技术人员。硬件选型、; 使用场景及目标:I/O分配、电路接线、程序逻辑设计及组①掌握PLC在态监控等多个方面家电自动化控制中的应用方法;②学习,体现了PLC在工业自动化控制中的高效全自动洗衣机控制系统的性与可靠性。;软硬件设计流程 适合人群:电气;③实践工程、自动化及相关MCGS组态软件与PLC的专业的本科生、初级通信与联调工程技术人员以及从事;④完成PLC控制系统开发毕业设计或工业的学习者;具备控制类项目开发参考一定PLC基础知识。; 阅读和梯形图建议:建议结合三菱编程能力的人员GX Works2仿真更为适宜。; 使用场景及目标:①应用于环境与MCGS组态平台进行程序高校毕业设计或调试与运行验证课程项目,帮助学生掌握PLC控制系统的设计,重点关注I/O分配逻辑、梯形图与实现方法;②为工业自动化领域互锁机制及循环控制结构的设计中类似家电控制系统的开发提供参考方案;③思路,深入理解PL通过实际案例理解C在实际工程项目PLC在电机中的应用全过程。控制、时间循环、互锁保护、手动干预等方面的应用逻辑。; 阅读建议:建议结合三菱GX Works2编程软件和MCGS组态软件同步实践,重点理解梯形图程序中各环节的时序逻辑与互锁机制,关注I/O分配与硬件接线的对应关系,并尝试在仿真环境中调试程序以加深对全自动洗衣机控制流程的理解。
### grep 正则表达式使用方法 `grep` 是 Linux 系统中用于文本搜索的强大工具,其核心功能依赖于正则表达式使用。在不同的正则表达式标准下,`grep` 的行为会有所不同,尤其是在某些元字符的使用上,例如 `+` 和中括号 `[]` 的处理方式。 #### 基础正则表达式(BRE)与扩展正则表达式(ERE) `grep` 默认使用的是基础正则表达式(Basic Regular Expressions,BRE)标准。在此模式下,部分元字符如 `+`、`?` 和 `|` 被视为普通字符,若要将其作为正则运算符使用,则需要进行转义,例如 `\+`、`\?` 和 `\|`。这种设计是为了保持与早期版本的兼容性[^1]。 若希望直接使用 `+` 表示“一个或多个前导字符”的含义,可以启用扩展正则表达式(Extended Regular Expressions,ERE)模式,通常通过 `-E` 选项实现: ```bash grep -E "go+gle" file.txt ``` 该命令将匹配包含“google”、“gooogle”等字符串的行。 #### 中括号 `[]` 的使用 中括号用于定义字符类,表示匹配其中任意一个字符。在 BRE 和 ERE 中,`[]` 都被直接识别为正则表达式的一部分,无需额外转义。例如,以下命令将匹配包含数字字符的行: ```bash grep "[0-9]" file.txt ``` 而如果希望匹配非数字字符,则可以使用 `[^0-9]` 表达式: ```bash grep "[^0-9]" file.txt ``` #### `+` 符号的特殊处理 由于 `+` 在 BRE 中默认不具有特殊含义,因此必须使用 `\+` 才能表示“一个或多个前导字符”。例如,以下命令使用 BRE 模式匹配包含连续多个字母 `o` 的字符串: ```bash grep "go\+gle" file.txt ``` 若使用 `-E` 选项,则可以直接写为 `go+gle`,无需转义 `+`。 #### 示例 以下是一些常见的 `grep` 正则表达式用法示例: 1. 匹配以字母 `a` 开头的行: ```bash grep "^a" file.txt ``` 2. 匹配包含连续两个数字的行: ```bash grep "[0-9][0-9]" file.txt ``` 3. 匹配包含 `http://` 或 `https://` 的行: ```bash grep "https\?://" file.txt ``` 4. 使用扩展正则表达式匹配包含 `cat` 或 `dog` 的行: ```bash grep -E "cat|dog" file.txt ``` #### 注意事项 - 若未使用 `-E`,则需对 `+`、`?` 和 `|` 进行转义。 - 中括号 `[]` 可直接用于定义字符类,无需转义。 - `grep` 的行为受当前正则表达式标准影响,建议根据需求选择合适的模式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值