所以,我有这个字符串:
JobDefinition://apps/ess/scm/productHub/itemImport/ItemImportSchedulingJobDef
我想将其转换为:
/a/e/s/p/i/ItemImportSchedulingJobDef
当我使用:sed -E 's|/([a-z]{1})|\1|g'
我只得到
JobDefinition:/appsessscmproductHubitemImport/ItemImportSchedulingJobDef
我正在使用sed,但我认为这是一个通用的正则表达式问题。
基本上,这是一个命名空间问题,而且非常长,所以我试图保持命名空间和最终的唯一标识符。
这与为完全限定类名压缩日志的Spring非常相似(我的灵感来源)。
JobDefinition://apps/ess/scm/productHub/itemImport/ItemImportSchedulingJobDef
我想将其转换为:
/a/e/s/p/i/ItemImportSchedulingJobDef
当我使用:sed -E 's|/([a-z]{1})|\1|g'
我只得到
JobDefinition:/appsessscmproductHubitemImport/ItemImportSchedulingJobDef
我正在使用sed,但我认为这是一个通用的正则表达式问题。
基本上,这是一个命名空间问题,而且非常长,所以我试图保持命名空间和最终的唯一标识符。
这与为完全限定类名压缩日志的Spring非常相似(我的灵感来源)。
JobDefinition://
这部分吗? - undefined\s
将匹配任何空格,但在其他一些工具中不会匹配,而在perl中则会匹配任何空格。在一些GNU工具中,\w
将匹配字母、数字或下划线,但在其他工具中则不会。在perl和使用-P
参数调用的GNU grep中,\d
将匹配数字,但在sed、awk和其他grep中则不会匹配,等等。这只是冰山一角。 - undefined