如何检查输入值是否在数组中(Powershell)

2024-03-19

$InputArray = @(a,e,i,o,u,1,2,3,4,5)
$UserInput = "Enter any value:"

我们如何检查$UserInput is in $InputArray或不提示输入正确?


Use the -contains操作员:

$InputArray -contains $UserInput

对于更新的 PowerShell 版本(v3 及更高版本),您还可以使用-in运算符,这对很多人来说感觉更自然:

$UserInput -in $InputArray

但请注意,它们中的任何一个都会对参考数组进行线性搜索($InputArray)。如果您的数组很小并且没有进行大量比较,这并没有什么坏处,但如果性能是一个问题,那么使用哈希表查找将是更好的方法:

$validInputs = @{
    'a' = $true
    'e' = $true
    'i' = $true
    'o' = $true
    'u' = $true
    '1' = $true
    '2' = $true
    '3' = $true
    '4' = $true
    '5' = $true
}

$validInputs.ContainsKey($UserInput)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检查输入值是否在数组中(Powershell) 的相关文章

随机推荐

  • 事务注释避免服务被嘲笑

    我有一个 drools 规则文件 它在规则中使用服务类 因此 一条规则的作用如下 eval countryService getCountryById 1 null 在使用 service 和 Transactional propagati
  • C中将字符串拆分为整数数组

    我在 C 应用程序中有一个逗号分隔的字符串 我正在将其放在一起 并且我想将其拆分为整数值数组 该字符串可以包含任意数量的逗号分隔值 因此我也没有数组的初始大小 e g 345 3345 35 75 52 386 我想做一些像 int par
  • Luarocks 无法编译对象

    我对使用 luarocks 之类的东西来安装库还很陌生 并且我遇到了一个问题 我不确定在安装 Lapis 的依赖项时如何修复 如您所见 我没有为 Lapis 安装任何依赖项 我假设当我尝试下载 Lapis 时它们会自动安装 我为此使用常规命
  • NoSql DB 和 OO Db 有什么区别?

    NoSql DB 和 OO Db 有什么区别 NoSQL DB 通常是非规范化的 保存对象数据的副本来代替对象 而 OODB 是具有对象关系的规范化数据库 在 OODB 中 数据存储在对象中的一处 并链接 关系 到其他对象 由于上述非规范化
  • 自定义 MKAnnotation 按钮

    I d like to generate a custom annotation using MKAnnotation annotationView image UIImage named annotation this is to set
  • rmarkdown:手动指定pandoc路径?

    我有一个定期渲染的 rmarkdown 文档rmarkdown render 它在我的计算机 Windows 上运行良好 因为我安装了 RStudio 并且它自动设置了 pandoc 的路径 但是 当我尝试在我的服务器 RStudio 外部
  • 如何使用定时器动态调整帧大小?

    我正在尝试使用 Timer 对象动态调整窗口大小 但没有成功 我在构造函数中设置了面板的首选大小 这很好地设置了窗口的大小 尽管只有一次 程序初始化后首选大小会发生变化 但窗口大小保持不变 为什么 因为构造函数只初始化一次 因此不受大小变化
  • 如何在 AWS Glue 中设置多个 --conf 表参数?

    AWS Glue 的 stackoverflow 上的多个答案都说要设置 conf 表参数 但是 有时在一项作业中 我们需要在一项作业中设置多个 conf 键值对 我尝试了以下方法来设置多个 conf 值 所有这些都会导致错误 添加另一个名
  • 实现游程编码

    我编写了一个程序来执行游程编码 在典型情况下 如果文本是 AAAAAABBCDEEEEGGHJ 游程长度编码将使其 A6B2C1D1E4G2H1J1 但它为每个非重复字符添加了额外的 1 因为我用它压缩 BMP 文件 所以我想到了放置一个标
  • GPS 位置未正确检索

    我是 Android 开发新手 我了解 Android 活动生命周期 请看下面的代码 public class MyTest extends Activity Override public void onCreate Bundle sav
  • *.suo 文件中实际包含什么?

    我读过有关解决方案用户选项文件的 MSDN 文章 https msdn microsoft com en us library bb165909 aspx 解决方案用户选项文件用于存储用户首选项设置 并在 Visual Studio 保存解
  • 对具有相似名称的多组列使用相同的 mutate

    想象一下以下数据 data lt tribble a1 a2 b1 b2 c1 c2 32 32 50 12 12 50 48 20 55 43 10 42 对于 i 1 2 我想计算deltai ai ci ai bi ci ai 我明确
  • TCP/IP 套接字是原子的吗?

    据我了解 如果写入的数据量很小 则对 TCP IP 套接字的写入将是原子的 我所说的原子性是指接收者将接收所有数据或不接收任何数据 但是 如果写入的数据量很大 则它不是原子的 我对么 如果是的话 什么算大呢 谢谢 鲍勃 不 TCP 是一种字
  • Executor 和 ExecutorService 有什么区别? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想知道 Executor 和 Ex
  • 在 BlackBerry 中单击事件期间更改 ButtonField 背景

    在 BlackBerry 中 如何更改ButtonField点击事件期间的背景颜色 例如 对于长按 背景颜色需要改变 对我来说 它采用默认颜色蓝色 如何改变呢 这是我们的自定义按钮字段 但它显示按钮单击事件的默认蓝色 public clas
  • 高效地从TextureView获取Bitmap

    我试图从一个TextureView 不幸的是尝试 textureView getBitmap 导致性能缓慢是否有更快的方法来获取位图 使用 NDK 是否更好 寻找实际例子 TextureView 接收 SurfaceTexture 上的帧
  • 当前对控制器类型 {1} 上的操作 {0} 的请求不明确

    我有两个动作 我想要我的路线 users and users id 与众不同 然而它给我带来了错误 是否可以在不手动创建的情况下实现这种事情every路线 我将有其他控制器将遵循类似的模式 并为所有这些控制器编写自定义路线 一般来说似乎是多
  • 请求网站时,Javascript 用户代理 (ajax) 与发送的用户代理不同

    我注意到我的手机 OnePlus 3 Android 8 0 0 上的 Chrome 64 0 3282 137 在请求网页时发送的用户代理与通过 ajax 发送的请求略有不同 该用户代理在请求网页时发送 Mozilla 5 0 Linux
  • 将字符串转换为 React JSX

    Goal 我想将包括 React 组件的字符串转换为功能齐全的 JSX 更简单的例子是这样的 Stack Overflow 上有很多解决方案 render let txt span b Hello World b span return d
  • 如何检查输入值是否在数组中(Powershell)

    InputArray a e i o u 1 2 3 4 5 UserInput Enter any value 我们如何检查 UserInput is in InputArray或不提示输入正确 Use the contains操作员 I