sed-如何使用sed做正则表达式组
无论如何,您可以像Java正则表达式模式/匹配/组一样使用sed做正则表达式匹配组吗?
如果我有像
test-artifact-201251-balbal-0.1-SNAPSHOT.jar
我如何使用sed只是为了获得如下结果:
test-artifact-0.1-SNASHOT.jar
我想知道sed是否允许您执行类似java regex的操作,您定义的模式如下:
([a-z]*-[a-z]*-)([0-9]*-)([a-z]*-)([.]*SNAPSHOT.jar)
然后您可以将结果作为一个数组获得,例如:
test-artifact-201251-
balbal-
0.1-SNAPSHOT.jar
回答:
您必须对括号进行转义才能对表达式进行分组:
\([a-z]*-[a-z]*-\)\([0-9]*-\)\([a-z]*-\)\([.]*SNAPSHOT.jar\)
并与使用它们\1
,\2
等等。
:还请注意,在SNAPSHOT
此之前[.]
不匹配。括号内.
是文字。它应该是[0-9.-]*
以上是 sed-如何使用sed做正则表达式组 的全部内容, 来源链接: utcz.com/qa/424649.html