1
20
下面是一个例子(取自 rubycentral.com article )只打印文件中的某些行:
这假设您有一个包含以下内容的文件:
程序将只打印:
其思想是,在左侧事件发生之前,该值为真,然后在右侧事件发生之前保持为真。如果使用得当,这可能是一个很好的语法糖,但你需要小心,使事情可读。 |
2
8
我想用一些具体的例子来补充詹姆斯的回答。我使用这个操作符来提取基于正则表达式的文本部分。 我正在编写一个工具,它涉及到通过net::ssh在远程服务器上运行命令。这个特定的服务器有一个恼人的习惯,不管会话是否是登录会话,都会打印motd。当我运行一个命令并检索输出时,这导致了大量的垃圾。由于我在服务器设置中没有太多的影响,我创建了一个小脚本,打印出一个分隔符,运行程序,然后打印另一个分隔符。输出看起来像这样。
触发器运算符是一个很有用的快捷方式,它可以只提取具有所需输出的代码段。我使用一个匹配25个大于s“>”的正则表达式开始匹配,使用25个小于s“<”的正则表达式结束匹配。
输出
我看到的大多数例子都涉及到基于正则表达式从文件或数组中提取数据块。想到的其他一些例子还有:拉出git合并冲突、遗留平面文件系统中的某些记录(如写入文件的结构)和日志文件。 基本上,任何时候你都需要根据开始和结束数据而不仅仅是单个行的内容来提取部分。它比简单的正则表达式复杂一点,但比编写语法分析器复杂一点。 |
3
4
在具有许多行的HTML表中,奇数/偶数行突出显示似乎是一个有效的用例。 在过去,当我在rails中呈现表时,我写过几次不像上面那样优雅的东西。 |