You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何提取大括号内以Mat开头的字符串并添加逗号输出

问题解决:提取大括号内以"Mat"开头的字符串并添加逗号输出

你的原awk命令存在两个核心问题:

  1. BEGIN {/Mat/}完全无效,BEGIN块是在处理输入行前执行的,这里的正则表达式不会对任何输入行做筛选判断。
  2. 没有添加对大括号内内容(即$2字段)是否以"Mat"开头的判断逻辑,会导致所有大括号内的内容都被输出。

修正后的awk命令如下:

awk -F"[{}]" '$2 ~ /^Mat/ {gsub(/ /, "", $2); print $2","}' in

命令说明

  • -F"[{}]":将字段分隔符设置为大括号,这样大括号包裹的内容会被识别为第二个字段($2)。
  • $2 ~ /^Mat/:仅处理$2字段以"Mat"开头的行,精准筛选目标内容。
  • gsub(/ /, "", $2):移除$2字段内的所有空格,确保输出格式整洁。
  • print $2",":输出处理后的字符串,并在末尾添加逗号。

示例验证

假设输入文件in内容为:

import { MatDialog } from '@angular/material/dialog';
import { CommonModule } from '@angular/common';
import { MatButtonModule } from '@angular/material/button';

执行命令后输出:

MatDialog,
MatButtonModule,

内容的提问来源于stack exchange,提问作者albertkao9

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 18:04:58