给定文件准备.js内容:
head
middle
tail
和构建.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<project name="abc" default="build">
<target name="build">
<replaceregexp file="./prep.js"
match="(.*)(middle)(.*)"
replace="1"/>
</target>
</project>
运行"ant"会离开文件准备.js
:head
tail
但我期望:
head
我如何得到我期望的?
文档提到了一个将文件内容视为一行的标志。您也可能不需要匹配中间词,因为模式应该只保留第一行,因此您可以尝试:
<replaceregexp file="./prep.js"
match="([^rn]*)(.*)"
replace="1" flags="s" />
[^rn]
匹配除换行符之外的所有字符。