我有一个从原理图生成的网表。该网表包括电源引脚。我试图编写一个perl脚本来从网表中删除电源引脚。 作为其中的一部分,我必须搜索与下面显示的模式匹配的字符串:
", );"
我使用了以下代码,但无效
$line =~ s/,\s+\);//g
我观察到模式以逗号结尾是匹配的,但是以逗号开头的模式或中间带逗号的模式不匹配。 关于如何开展这项工作的任何建议
答案 0 :(得分:0)
你需要改用它:
s/,\s*\);//
你应该是防御性的,并且能够处理,
和)
之间没有空格。你必须逃避)
。有关详细信息,请参阅perldoc perlre
。
答案 1 :(得分:0)
谢谢大家。我发现了这个问题。问题是要识别的模式被分成两个不同的行。 “,”在一行后跟“);”在下一行。首先,iam删除新行字符并假设下一行将附加到当前行,这不会发生。因此,模式匹配不起作用。
要解决此问题,我必须再次阅读该文件,然后替换该模式。