PowerShell实现在字符串中查找大写字母

(编辑:jimmy 日期: 2025/1/9 浏览:2)

如果你想找到字符串中的大写字符,你可能会使用正则表达式。亦或者使用你的大写字母列表一个个匹配,当然更灵活的是使用.NET中的 IsUpper()函数。

小编注:.NET是PowerShell的土壤,尽最大可能挖掘出这些framework框架中的函数,是我们伸手党永恒的追求。
下面的例子,会扫描字符串中的每一个字符,然后返回遇到的第一个大写字母的位置:

$text = 'here is some text with Uppercase letters'
 
$c = 0
$position = foreach ($character in $text.ToCharArray())
{
 $c++
 if ([Char]::IsUpper($character))
 {
  $c
  break
 }
}
 
if ($position -eq $null)
{
 'No uppercase characters detected.'
}
else
{
 "First uppercase character at position $position"
 $text.Substring(0, $position) + "<<<" + $text.Substring($position)
}


输出结果如下:

PS C:\>First uppercase character at position 24
 here is some text with U<<

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。