无需关键字即可捕获 ## HD

无需关键字即可捕获 ## HD

我在 awk 文件中使用以下正则表达式

beg_ere = "^[[:space:]]*([#;!/]{2}|@c)[[:space:]]+(HD) [[](OPCON)[]] .*[[:space:]]*$"

有了它我可以匹配以下几行

## HD [OPCON] this,that
## HD [OPCON] this,that,other

但不是

## HD [OPCON]

我该如何改变beg_ere才能匹配## HD [OPCON]

this,that,other是一系列用逗号分隔的关键字。一行中可以有任意数量的关键字,也可以没有。

答案1

尝试

beg_ere = "^[[:space:]]*([#;!/]{2}|@c)[[:space:]]+(HD) [[](OPCON)[]].*$"

注意:前面的单个空格被删除.*[[:space:]]*之后也删除了多余的内容。

相关内容