【发布时间】:2019-02-16 15:14:15
【问题描述】:
Perl 中的 range 命令
RANGE
/^ identifier cust_pri/ .. /addr-type-none/
匹配带有cust_pri 和cust_pri_sip 的字符串,其中回车符紧跟在字符串cust_pri(和cust_pri_sip)之后。我不想在 cust_pri_sip 上匹配,而只在 cust_pri 上匹配。
我尝试输入\r\n 并单独输入均无济于事。我可以在 perl 范围的末尾添加一个字符串或元字符来帮助区分这两个字符串吗?
我需要查看两种类型接口的数据,但在第一个范围命令上,它也在收集第二个范围命令也在收集的数据 (cust_pri_sip) 导致我的第一个脚本出错。第二个作品找到。我无法更改输入数据,我需要一种方法来区分两者。
这是主 Perl 程序的子脚本
WIDTH = 65
DIRECTORY = /home/myfiles/
MASTER Config Lines
identifier cust_pri
description *
addr prefix 0.0.0.0
network interfaces M00|1:\d*
tcp media profile
monitoring filters
node functionality
default location string
alt family realm
addr-type-none
RANGE
/^ identifier cust_pri/ .. /addr-type-none/
#
还有一个和上面类似的子脚本
RANGE
/^ identifier cust_pri_sip/ .. /addr-type-none/
第一个脚本也收集两个脚本的数据,因为它匹配。
【问题讨论】:
-
我正在尝试遵循代码和目标,足以以可读的方式重新格式化它们,但我无法充分理解您试图重新格式化的内容,更不用说回答了。您能否尝试更好地格式化您的问题,以便我们知道什么是代码、什么是示例文本以及问题是什么?
-
您在寻找
/^identifier cust_pri$/吗?