27 lines
631 B
PowerShell
27 lines
631 B
PowerShell
function Normalize-ConfigurationDataSeparator {
|
|
[CmdletBinding()]
|
|
Param(
|
|
[AllowNull()]
|
|
[string]
|
|
$Value,
|
|
|
|
[Parameter(Mandatory=$true)]
|
|
[string]
|
|
$Separator
|
|
)
|
|
|
|
if($null -eq $Value){
|
|
return ""
|
|
}
|
|
|
|
if([string]::IsNullOrEmpty($Separator)){
|
|
return $Value
|
|
}
|
|
|
|
$EscapedSeparator = [regex]::Escape($Separator)
|
|
$Normalized = [regex]::Replace($Value, "($EscapedSeparator){2,}", $Separator)
|
|
$Normalized = $Normalized.Trim()
|
|
$Normalized = [regex]::Replace($Normalized, "^$EscapedSeparator|$EscapedSeparator$", "")
|
|
return $Normalized
|
|
}
|