如何使用Ant replaceregexp任务检查行的开始

时间:2019-04-08 05:51:14

标签: regex ant

我有一个文件,我想用新值替换旧值。在我的文件中,我具有以下内容:

我想将myList值替换为其他值。为此,我在Ant中使用了“ replaceregexp”任务。我为此使用了以下代码,这还将检查注释的myList。

ForEach ($FAResource in $FAppResources) {
        Write-Output ("*****************************************************************************************")
        Write-Output ("Starting FunctionApp "+ $FAResource.ResourceName+ " in Resource Group " +$RGName)
        Write-Output ("*****************************************************************************************")
        Start-AzureRmWebApp -ResourceGroupName $RGName -Name $FAResource.ResourceName
        $newstate = (Get-AzureRmWebApp -ResourceGroupName $RGName -Name $FAResource.ResourceName).State
        Write-Output ($FAResource.ResourceName + " and its status is " +  $newstate)
}

我想知道如何检查生产线的开始。这意味着仅当行以“ myList”开头时才需要替换,而当行以“ // myList”开头时则不必替换。

我该怎么做?

1 个答案:

答案 0 :(得分:1)

这是一个基本的正则表达式问题。有几种方法可以完成此操作,最常见的是,您可以使用脱字号(^)标记行的开头,例如:

<replaceregexp file="myfilename" match="^myList=(.*)" byline="true" replace="...

请注意,您将需要byline="true",否则整个文件将被视为一个字符串来处理。