现在我正在使用PowerShell Studio 2017生成带有GUI的XML文件。这段代码收集CheckedListBox中的已检查项目:
$Groups = $chklistGroups.CheckedItems | ForEach-Object {
"<Group>$_</Group>`n`t`t`t`t"
}
其中一些复选框包含&
,显然不能在XML文件中。有没有办法删除&
并将其替换为此代码段中的相应&
?然后将此XML文件传递到另一个脚本中,我尝试使用此脚本删除&符号:
# check the xml file for & and replace them with & so it doesn't crash - except it doesn't work so it's gonna crash
if ($NewUserXML.NewUser.ActiveDirectory.User.Groups.Group.Contains("&"))
{
"$($NewUserXML.NewUser.ActiveDirectory.User.Groups.Group)".Replace('&','&')
}
在创建XML之前,或者在将其放入脚本本身之后,通常更好吗?我的假设是在创建它之前做它更好。如果是这样,是否可以在第一段代码中执行此操作?
答案 0 :(得分:2)
您可以在ForEach-Object
:
$Groups = $chklistGroups.CheckedItems | ForEach-Object {
"<Group>$($_.Replace('&','&'))</Group>`n`t`t`t`t"
}