powershell - 检查字符串中的特殊字符
问题描述
我需要在其中包含字母数字值的字符串中找到特殊字符。
我已经尝试了下面的代码片段,但它不起作用。
$Special_characters = ('\n|\r|\t|\a|\"|\`')
$Value = "g63evsy3swisnwhd83bs3hs9sn329hs\t"
if($Value -match $Special_characters)
{
Write-Host "Special characters are present"
}
else
{
Write-Host "special characters are absent"
}
即使末尾有特殊字符,输出也会显示“没有特殊字符”。如何解决?
解决方案
$Special_Characters
这是一个字符串,因此您的代码正在搜索要在 中找到的整个单词 (\n|\r|\t|\a|\"|`) $Value
,但未找到。
您必须使用数组而不是字符串,如下所示:
$Value = "g63evsy3swisnwhd83bs3hs9sn329hs\t"
$Special_Characters = @('\\n','\\r','\\t','\\a','\\"','\\`')
$Special_Characters | Foreach-Object {
if ($Value -match $_) {
"$_ is present"
} else {
"$_ is not present"
}
}
笔记
你必须放双反斜杠 (\\) 因为反斜杠在 Powershell 中被视为转义字符;在此处查看有关 Powershell 中反斜杠的更多信息
推荐阅读
- python-3.x - 有没有办法在python中获取rabbitmq每个计划消耗的消息计数
- reactjs - 传递道具不起作用 Material UI 做出反应
- java - 为什么Beautifull安排在c中不起作用
- c# - 使用 IDbConnection 以及如何将 String 转换为 Clob
- javascript - 在 webgl 中,应用透视矩阵后,如何设置 modelViewMatrix 的 z 坐标以使输出的形状大小等于我设置的初始值?
- android - 为什么我不能为 textView (android) 应用边距?
- python - Python中具有单个等约束的最小二乘优化
- kubernetes - 将 Azure AD 与 AWS EKS 本机 OIDC 集成
- android - 在 android studio 中使用 SQLite 显示上次登录的用户数据
- react-native - 反应导航如何深度链接