我有 ci-pipelines 并且有很多before_scripts
部分。我想做一个多行正则表达式。我将所有之前的脚本导出到my-ci-jobs.txt
python 脚本。
pcregrep -M 'before_script.*\n.*' my-ci-jobs.txt
"before_script": [
"yarn install"
"before_script": [
"yarn install"
"before_script": [
"yarn install"
"before_script": [
"yarn install"
"before_script": [
"yarn install"
"before_script": [
"yarn install"
"before_script": [
"yarn install"
"before_script": [
"yarn install"
"before_script": [
"yarn install"
"before_script": [
"yarn install"
"before_script": [
"yarn install"
这很好用,但有时在 before 脚本中有更多的行,所以我想制作常规来捕获 before_script 和第一个匹配之间的所有内容],
。但是当我实现它时,它会捕捉到最长的匹配。这是我的命令(我不会在这里传递结果,它是整个文件直到最后一个],
):
pcregrep -M 'before_script.*(\n|.)*],' my-ci-jobs.txt
如何使正则表达式匹配第一个匹配项?有没有更好的方法来做一个多行正则表达式?