我尝试在包含类似以下模式的所有行上替换版本号:moduleprop
<module name="XYZ_Web">
<moduleprop name="war" value="xyzz-web-2.23.12-SNAPSHOT.war"/>
<moduleprop name="starting_weight" value="6000"/>
<moduleprop name="virtualHost" value="default_host"/>
</module>
<module name="XYZ_Export_EJB">
<moduleprop name="jar" value="xyzl-export-ejb-2.23.12-SNAPSHOT.jar"/>
<moduleprop name="starting_weight" value="1000"/>
</module>
我的sed命令找到我正在寻找的所有行:
sed 's/<moduleprop name="[j|w]ar" value="xyz[z|l]-[a-z-]*2\.23\.12-SNAPSHOT\.[j|w]ar"\/>/test/g' my-file.xml
有了这个方法,我无法再参考每个正则表达式并使用该值。我尝试用\ 1 \ 2来推荐,但我的cygwin抱怨:
sed: -e Ausdruck #1, Zeichen 25: Ungültiger Verweis \1 im rechten Teil (`RHS') des `s'-Befehls
答案 0 :(得分:2)
要使匹配字符串的某些部分与.main {
height: 100%;
width: 100%;
display: flex;
flex-direction: column;
}
.filter {
width: 100%;
}
.result {
width: 100%;
}
.resultcontent {
height: 100%;
width: 100%;
}
.list {
height: 100%;
width: 100%;
overflow: auto;
}
.listcontent {
height: 1000px;
width: 2000px;
}
等一起引用,您需要捕获它们。在经典\1
中,您使用sed
开始捕获,\(
结束捕获。捕获按\)
标记的外观顺序编号。
您可以使用:
\(
如果需要,可以嵌套捕获。