簡體   English   中英

驗證PowerShell參數是否為字母數字

[英]Validate that a PowerShell parameter is alphanumeric

我只想驗證參數是否僅由字母數字字符組成。 我已經嘗試過了,但是卻沒有我想要的那樣:

param(
    [ValidatePattern('[a-zA-Z0-9]')]$someVariableThatShouldOnlyContainAlphaNumerics = 'something_with_underscores'
)
write-host $someVariableThatShouldOnlyContainAlphaNumerics

返回值:

something_with_underscores

我顯然缺少明顯的東西。 有什么建議么?

ValidatePattern支持正則表達式。 如果模式匹配,則字符串已驗證。 您不是在驗證字符串中的所有字符...只是一個字符!

更改正則表達式模式以匹配整個字符串將是一種方法。 其他正則表達式也足夠了。

[ValidatePattern('^[a-zA-Z0-9]+$')]$someVariableThatShouldOnlyContainAlphaNumerics = 'something_with_underscores'

請注意,設置默認值將繞過此驗證,因為它不會傳遞給函數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM