小编Cri*_*imp的帖子

用字母替换数字 - powershell

我有一个数组元素,我试图用字母替换所有数字。这是操作前的数组元素:

$a[0].object

--- OUTPUT ---
518773112
Run Code Online (Sandbox Code Playgroud)

我将数字转换为字符串并将其存储在$e. 然后我找到该字符串的长度并将其存储在$d

$e = $a[0].object.ToString()
$d = $a[0].object.ToString().length
$e
$d

---OUTPUT---
518773112
9
Run Code Online (Sandbox Code Playgroud)

然后我尝试循环遍历字符串以用字母替换数字。我放入$i子字符串中以获取我要替换的数字。然后我使用 anif-statement来查看该子字符串是否等于数字,如果是,则使用替换方法尝试用字母替换该数字。

for($i=0; $i -lt $d; $i++){
    $pos = $e.Substring($i,1)
    if($pos -eq '0'){$e += $pos.replace('0', 'A')}
    if($pos -eq '1'){$e += $pos.replace('1', 'B')}
    if($pos -eq '2'){$e += $pos.replace('2', 'C')}
    if($pos -eq '3'){$e += $pos.replace('3', 'D')}
    if($pos -eq '4'){$e += $pos.replace('4', 'E')}
    if($pos -eq '5'){$e += $pos.replace('5', 'F')}
    if($pos -eq '6'){$e += $pos.replace('6', 'G')}
    if($pos -eq …
Run Code Online (Sandbox Code Playgroud)

arrays powershell replace for-loop

8
推荐指数
2
解决办法
839
查看次数

从 Excel 导出后,在 XML 文件和 PowerShell 输出中发现奇怪的字符:

我有一个 XML 文件,我正在尝试使用 PowerShell 读取该文件。但是,当我阅读它时,某些 XML 对象的输出中包含以下字符: \xc3\xa2\xe2\x82\xac\xe2\x80\xb9

\n

我只是从第三方下载了所需的 XML 文件,该文件在 Excel 中打开。然后我抓取所需的列并将它们粘贴到新的 Excel 工作簿中。然后,我使用 XML 架构映射字段,然后将其导出为 XML 文件,然后将其用于编写脚本。

\n

在 Excel 电子表格中,我的数据看起来很干净,但当我导出它并运行 PS 脚本时,这些奇怪的字符出现在输出中。这些字符甚至在导出后出现在实际的 XML 文件中。我究竟做错了什么?

\n

我尝试使用-Encoding UTF8,但我对 PowerShell 比较陌生,并且不确定如何将其正确应用到我的脚本中。感谢任何帮助!

\n

电源外壳

\n
$xmlpath = 'Path\\To\\The\\File.xml'\n\n[xml]$xmldata = (Get-Content $xmlpath)\n\n$xmldata.applications.application.name\n
Run Code Online (Sandbox Code Playgroud)\n

输出示例

\n
\xc3\xa2\xe2\x82\xac\xe2\x80\xb9ABC_DEF_GHI\xc3\xa2\xe2\x82\xac\xe2\x80\xb9.com\xc3\xa2\xe2\x82\xac\xe2\x80\xb9\xc3\xa2\xe2\x82\xac\xe2\x80\xb9\n\xc3\xa2\xe2\x82\xac\xe2\x80\xb9JKL_MNO_PQRS\xc3\xa2\xe2\x82\xac\xe2\x80\xb9.com\xc3\xa2\xe2\x82\xac\xe2\x80\xb9\nTUV_WXY_Z.com\nAB_CD_EF_GH\xc3\xa2\xe2\x82\xac\xe2\x80\xb9.com\n
Run Code Online (Sandbox Code Playgroud)\n

xml excel powershell

3
推荐指数
1
解决办法
825
查看次数

标签 统计

powershell ×2

arrays ×1

excel ×1

for-loop ×1

replace ×1

xml ×1