Powershell if else regex
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Powershell if else regex相关的知识,希望对你有一定的参考价值。
想知道是否有人可以提出建议。
我尝试了几种不同的方法来使下面的工作正常我试图仅提取5位数字的第一段代码,但最终获得所有属性值。
第二个我无法获取else 'No Extension Number'来输出。
#test for UM extension number#
$um1 = Get-UmMailbox $user -ErrorAction SilentlyContinue | Select @name=”Extensions”;expression=
$_.Extensions -join “;” | ? $_.Extensions -match '\d\d\d\d\d'
$umextensionnumber = if ($um1) $um1 else 'No UM Extension Number'
#grab user attributes and test for extension number#
$ad2 = Get-AdUser $user -Properties * | Select extensionAttribute10, msExchExtensionAttribute16,
@name=”otherTelephone”;expression=$_.otherTelephone -join “;”
$extensionnumber = if ($ad2) $ad2.otherTelephone else 'No Extension Number'
任何帮助将不胜感激。
答案
对于第一个,用^
(字符串的开头)和$
(字符串的结尾)锚定正则表达式模式:
... |? $_.Extensions -match '^\d\d\d\d\d$'
对于第二个,假设otherTelephone
是扩展名,请更改if
条件以专门检查该属性:
$extensionnumber = if($ad2.otherTelephone) $ad2.otherTelephone else "No Extension Number"
以上是关于Powershell if else regex的主要内容,如果未能解决你的问题,请参考以下文章