我希望按属性" innerText"过滤对象列表。但我需要做一些准备工作。 为什么代码不起作用?它返回所有对象。
function enc[[string]$inp]
{
return [System.Text.Encoding]::GetEncoding("windows-1251").GetString([System.Text.Encoding]::GetEncoding("ISO-8859-1").GetBytes($inp))
}
$req.Links | Where-Object { enc($_.innerText) -eq "my string"} | fl
我做错了什么? 不幸的是,我没有在互联网上找到必要的文章。 有很多这样的例子:($ _。姓名-eq"名称") - 对我来说没有任何价值。
答案 0 :(得分:4)
我认为问题在于你如何定义你的功能。
function enc
{
param ([string]$inp)
return [System.Text.Encoding]::GetEncoding("windows-1251").GetString([System.Text.Encoding]::GetEncoding("ISO-8859-1").GetBytes($inp))
}
$req.Links | Where-Object { (enc $_.innerText) -eq "my string"} | fl
简单测试:
$a = "hello","world"
function enc
{
param ([string]$inp)
$inp
}
$a | Where-Object { (enc $_) -eq "hello"}