gpt4 book ai didi

java - 使用 Gradle 任务从文件中删除特定的行模式

转载 作者:行者123 更新时间:2023-11-30 07:24:12 25 4
gpt4 key购买 nike

我正在尝试使用 gradle 中的以下代码从 A.txt 文件中删除特定的行模式

文件包含以下内容

A.txt

nda.url=@nda.url@

# SAP Settings
sdap.url=@sap.url@
sap.prefix.search=@sap.prefix.search@
sap.prefix.group=@sap.prefix.group@

# SMTP/Email Settings
smtp.host=@smtp.host@
smtp.enabled=true

我试图从上面的文件中删除具有此模式 =@*@ 和 gradle 任务的所有行,之后我的文件应该只包含那些不具有该模式的值。

我尝试使用下面的 gradle 代码来完成此操作,但它不起作用

task removeandcopy(type:Copy) {
def regexp = new org.apache.tools.ant.types.RegularExpression()
regexp.pattern = '=@*@'

from(projectDir) {
include 'A.txt'
filter(org.apache.tools.ant.filters.LineContainsRegExp, regexps:[regexp])
}
into "outputDir"
}

有人可以让我知道我在这里做错了什么吗?

最佳答案

我能够通过以下方式实现这一目标,并且工作正常。

task deleteEmptyVariable(dependsOn: passLocalProp) << {
description "This function will remove all those variable which doesn't have value"
FileTree propFiles = fileTree('build/orignal/local.properties.template') {

}
String regex = ".*=@.*@"
propFiles.each { File propFile ->
println "Start replacing regex on $propFile.name"
String content = propFile.getText()
content = content.replaceAll(regex, "")
propFile.setText(content)
}
}

关于java - 使用 Gradle 任务从文件中删除特定的行模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37031273/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com