regex 用多行替换括号中的某些单词的正则表达式

u4vypkhs  于 2023-10-22  发布在  其他
关注(0)|答案(1)|浏览(102)

需要查找并替换type=

@Define(
         *          out="type",
         *          name="some_val",
         *          type="value",
         *          some="description",
         *      ),

要在某些@Define中使用多行查找括号:

/@Define\(((.|\n)*?)\)/g

但这不适用于多行:

/@Define\((type=)\)/g
rmbxnbpk

rmbxnbpk1#

考虑到括号中没有)

(                 // select as $1
  @Define\(       // literal `@Define(`
  [^)]*?          // any amount of not `)`
)                 // end $1
type="[^"]*"      // type with any simple string
from:
(@Define\([^)]*?)type="[^"]*"
to:
$1type="bar"

相关问题