gpt4 book ai didi

powershell - 替换讨厌的 'umlaut' |标准方式不起作用

转载 作者:行者123 更新时间:2023-12-04 14:05:35 26 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Character-encoding problem with string literal in source code

(1 个回答)


3个月前关闭。




我正在尝试编写一个脚本,我想调用它来替换德语变音、ü、ä、ö 等。
我尝试了几个版本,使用 .replace 并在一行和多行中使用 -replace,没关系
现在我坚持这个:

    [CmdletBinding()]
param (
[Parameter()]
[string]
$name
)
$name = $name -replace 'ö','oe'
$name = $name -replace 'ä','ae'
$name = $name -replace 'ü','ue'
$name = $name -replace 'ß','ss'
$name = $name -replace 'Ö','Oe'
$name = $name -replace 'Ü','Ue'
$name = $name -replace 'Ä','Ae'
return $name
当我调用脚本/函数时,它不会替换任何字符。我试过“WürstWäßerWörfer”,但它什么也没做。如果我将 $name 设置为“WürstWäßerWörfer”并且只执行 $name =$name -replace命令它确实有效。如果我调用脚本/函数,它就不起作用。
我通过 .\entgermanisierung "WürstWäßerWörfer"调用脚本,它返回 "WürstWäßerWörfer"

最佳答案

你可以把你的脚本变成这样的函数:

function Remove-Umlaut {
param (
[Parameter(Mandatory = $true)]
[string]
$String
)
$String -creplace 'Ü', 'Ue' -creplace 'Ö', 'Oe' -creplace 'Ä', 'Ae' -creplace 'ü', 'ue' -creplace 'ö', 'oe' -creplace 'ä', 'ae' -replace 'ß','ss'
}
现在您可以像调用任何其他函数一样调用它。例如:
$String = 'Das Üben von Xylophon und Querflöte ist zweckmäßig.'
Remove-Umlaut -String $String
结果是这样的:
Das Ueben von Xylophon und Querfloete ist zweckmaessig.
此代码也适用于 5.1 版。

关于powershell - 替换讨厌的 'umlaut' |标准方式不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68636502/

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