function - Powershell - 如何构建一个函数来用其他字符替换某些特殊字符

标签 function powershell

我正在尝试在 Powershell 中构建一个函数,每次我必须用其他字符替换特殊字符列表时都可以使用该函数。例如,这是特殊字符的列表:

$Specialchars = '["ü","ä","ö","ß","æ","Œ","œ","°","~","Ø"]'

我希望该函数可以将“ü”替换为“ue”或将“Ø”替换为“o”等等。我的想法是针对我想要的任何字符串运行该函数,以我想要的方式替换这些特殊字符。

现在,我试过这个:

function ReplaceSpecialChars($chars)
{
    return $chars -replace "Ø","o"
    return $chars -replace "~",""
    return $chars -replace "œ","oe"
}

它仅在找到第一个特殊字符“Ø”时起作用,例如当我针对具有“~”的字符串运行它时不起作用。我根本不是 Powershell 函数的专家,所以我想知道是否有人有一些提示可以帮助我。

非常感谢!

最佳答案

在执行下一步之前,您必须分配替换的结果。

这是该函数的更新版本,包括一种定义替换的方法:

function ReplaceSpecialChars([string]$string) {
    # define replacements:
    @{
        "ä" = "ae"
        "ß" =  "ss"
        # ...
    }.GetEnumerator() | foreach {
        $string = $string.Replace($_.Key, $_.Value)
    }
    return $string
}

请注意,您可能想要定义小写 + 大写替换。

关于function - Powershell - 如何构建一个函数来用其他字符替换某些特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64750316/

相关文章:

powershell - Azure DSC VM 扩展 : Why does $Home directory change?

Powershell:是否可以在管道命令上设置别名?

c++ - 动态定义函数返回类型

Javascript 在新选项卡中输入 key 打开页面

xml - 多个 XML 到 powershell,提取信息,然后使用信息

powershell - Powershell远程查询Server 2003的事件日志

powershell - Powershell通过文本文件循环并按冒号分割

python - 意外的 python 函数返回行为

function - Lua:冒号、 'self' 和函数定义与调用

swift - 在 Swift 中,没有办法获取返回函数的参数名称?