当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell 不喜欢| PowerShell 快速浏览

作者:精品下载站 日期:2024-12-14 04:51:53 浏览:14 分类:玩电脑

PowerShell 不喜欢| PowerShell 快速浏览


[玩转系统] PowerShell 不喜欢| PowerShell 快速浏览

PowerShell简介不喜欢

下面的文章提供了 PowerShell 不喜欢的概述。比较运算符让用户指示比较值并查找满足上述条件的值的条件。要使用比较运算符,请指示您只需要与隔离这些值的运算符一起比较的值。 not like 运算符是一种匹配比较运算符。它与类似、匹配和不匹配运算符一起属于匹配比较运算符类型的一部分。如果字符串与指定条件不匹配,not like 运算符将返回 true。在这里我们将看到 not like 运算符以及其他匹配运算符。

not like 运算符的语法:

下面给出的是 not like 运算符的语法:

<string[]> -notlike <wildcard-expression>

示例:

代码:

"vigneshkrishnakumar" -notlike "*mar"
"vigneshkrishnakumar" -notlike "*sethu"

输出:

[玩转系统] PowerShell 不喜欢| PowerShell 快速浏览

不像Operator那样工作

like 运算符使用通配符表达式进行比较。例如,让我们考虑一个句子“你多大了?如果我们执行 cmdlet“你多大了”(例如“*you”),则 cmdlet 将返回 true,但是如果将 cmdlet 修改为“你多大了”(例如“you”),则 cmdlet 将返回 false。这是由于您前面的星号符号造成的。星号符号代表通配符表达式。

如果通配符出现在比较文本的开头,则意味着搜索表达式之前可以有任何内容,而如果星号出现在末尾,则意味着搜索表达式后面应该有一些内容。在上面的示例中,如果星号放在文本后面,它将返回 false。 not like 运算符与 like 运算符完全相反。当条件为 false 时返回 true,匹配时返回 false。

示例:

代码:

Write-Host " wild card before the comparison text" -ForegroundColor Green
“my name is Vignesh krishnakumar” -like “*is”
Write-Host "no wild card involved" -ForegroundColor Green
“my name is Vignesh krishnakumar” -like “is”
Write-Host "wild card after the comparison text"-ForegroundColor Green
“my name is Vignesh krishnakumar” -like “is*”
Write-Host " wild card before the comparison text" -ForegroundColor Green
“my name is Vignesh krishnakumar” -notlike “*is”
Write-Host "no wild card involved" -ForegroundColor Green
“my name is Vignesh krishnakumar” -notlike “is”
Write-Host "wild card after the comparison text"-ForegroundColor Green
“my name is Vignesh krishnakumar” -notlike “is*”

输出:

[玩转系统] PowerShell 不喜欢| PowerShell 快速浏览

比较相似和不相似与匹配和不匹配

另一种类型的比较运算符是匹配/非匹配运算符。虽然与 Like 相比,它更像是 PowerShell(但稍微复杂一些)。匹配或非匹配运算符管理员使用常规表达式(正则表达式)。这通常是一个巨大的优势,使协调中心在点赞方面拥有明显的优势。无论如何,如果您最近从未使用过常用的表达方式,请自己计划一下。让我们再次回顾过去的插图字符串。

匹配和不匹配运算符的语法:

<string[]> -match <regular-expression>
<string[]> -notmatch <regular-expression>

示例#1:

代码:

"sun", "mon","tue","wed","thu","fri","sat" -match "su"
"viki", "vignesh","vikiii","vikii","nandhini","vyapini","sethu" -notmatch "viki"

输出:

[玩转系统] PowerShell 不喜欢| PowerShell 快速浏览

示例#2:

代码:

Write-Host " wild card before the comparison text" -ForegroundColor Green
“my name is Vignesh krishnakumar” -match “*is”
Write-Host "no wild card involved" -ForegroundColor Green
“my name is Vignesh krishnakumar” -match “is”
Write-Host "wild card after the comparison text"-ForegroundColor Green
“my name is Vignesh krishnakumar” -match “is*”
Write-Host " wild card before the comparison text" -ForegroundColor Green
“my name is Vignesh krishnakumar” -notmatch “*is”
Write-Host "no wild card involved" -ForegroundColor Green
“my name is Vignesh krishnakumar” -notmatch “is”
Write-Host "wild card after the comparison text"-ForegroundColor Green
“my name is Vignesh krishnakumar” -notmatch “is*”

输出:

[玩转系统] PowerShell 不喜欢| PowerShell 快速浏览

从上面的输出中可以看出,匹配运算符不适用于通配符表达式。

示例#3:

代码:

$start=(Get-Date).Millisecond
Write-Host " wild card before the comparison text" -ForegroundColor Green
“corona originated in china but now it is cured there” -like “*there”
Write-Host "no wild card involved" -ForegroundColor Green
“corona originated in china but now it is cured there” -like “there”
Write-Host "wild card after the comparison text"-ForegroundColor Green
“corona originated in china but now it is cured there” -like “there*”
Write-Host "wild card before the comparison text"-ForegroundColor Green
“corona originated in china but now it is cured there” -notlike “*there”
Write-Host "no wild card involved" -ForegroundColor Green
“corona originated in china but now it is cured there” -notlike “there”
Write-Host "wild card after the comparison text" -ForegroundColor Green
“corona originated in china but now it is cured there” -notlike “there*”
$end=(Get-Date).Millisec
Write-Host "Total time in milli seconds for like and not like: $($start-$end)" -ForegroundColor Yellow
$start1=(Get-Date).Millisecond
Write-Host " wild card before the comparison text" -ForegroundColor Green
“corona originated in china but now it is cured there” -match “there”
Write-Host "no wild card involved" -ForegroundColor Green
“corona originated in china but now it is cured there” -match “now”
Write-Host "wild card after the comparison text"-ForegroundColor Green
“corona originated in china but now it is cured there” -match “america”
Write-Host "wild card before the comparison text"-ForegroundColor Green
“corona originated in china but now it is cured there” -notmatch “america”
Write-Host "no wild card involved" -ForegroundColor Green
“corona originated in china but now it is cured there” -notmatch “sweden”
Write-Host "wild card after the comparison text" -ForegroundColor Green
“corona originated in china but now it is cured there” -notmatch "china”
$end1=(Get-Date).Millisec
Write-Host "Total time in milli seconds for match and not match: $($start1-$end1)" -ForegroundColor Yellow

输出:

[玩转系统] PowerShell 不喜欢| PowerShell 快速浏览

从上面的输出中可以看出,like 和 not like 的执行时间较短。

结论 - PowerShell 不喜欢

因此,在本文中我们详细了解了 not like 运算符。在这里,我们通过适当的示例了解了语法、用法及其优点。在这里我们还看到了匹配和不匹配运算符以及它与不喜欢运算符的异同。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯