您好,我想使用 sed 删除一行,如果它与同一行中的 2 个正则表达式匹配。 EG 该行以 /* 开头,以 */ 结尾(注释)。下面的脚本将完成大部分工作。
sed -e '/^/*/ d' -e '/*/$/ d' 文件名
该脚本将删除所有以 * 开头并以 */ 结尾的行。我希望它仅在满足两个条件而不是一个条件时才删除该行。
Try
sed '/^\/\*.*\*\/$/ d' filename
这里的关键是你可以将两个正则表达式模式组合成一个,只需将它们连接起来.*
,它匹配“任意数量的任意字符”。当然,这强制了两者之间的顺序。第一个图案^\/\*
必须发生在第二个之前\*\/$
为了匹配这个特定的模式。
另外,自从*
在正则表达式中具有特殊含义,请务必转义星号,就像必须转义斜线一样。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)