powershell - 从字符串中删除最后两个单词
问题描述
我想从下面的字符串中删除最后两个单词
'BIOS 更新 - 惠普'
也应该被删除,但我通过做这部分工作
$HPBIOSs.name.replace('BIOS Update - Hewlett-Packard','').trim()
这给了我:
我通过以下方式让它工作:
"$(([string]$HPBIOSs.name.replace('BIOS Update - Hewlett-Packard','').Split(" ")[0..($HPBIOSs.name.replace('BIOS Update - Hewlett-Packard','').Split(" ").count-3)]).Trim())"
有没有更好的存档方法?我在 switch 语句中使用它,所以我希望它在一个衬里
解决方案
您可以-replace
为此使用正则表达式。
$HPBIOSs.name -replace "(\s\S+){2}$"
解释:
\s
匹配单个空格字符\S+
匹配任何非空白字符一次或多次 (+
){2}
完全匹配()
.$
在字符串末尾断言位置
推荐阅读
- scala - 在 Spark (Scala) 中填写给定日期间隔内的缺失周数
- amazon-web-services - AWS s3 同步重新复制自上次运行以来未更改的文件
- google-sheets - 在行和列范围内计算“单词”。仅当该行中写有另一个特定的“单词”时
- python - 将 python 列表传递给“c”DLL 函数,该函数使用 ctypes 返回数组数据
- ios - Fabric 在 [Fabric isCrashlyticsCollectionEnabled] 上的最新更新 (1.9.0) 后崩溃
- sql-server - SQL AFTER INSERT,UPDATE 如果更新特定列,则触发条件
- java - Kafka FlapmapValues 在传递json数组对象时会不会将记录拆分成多条记录?
- angular - 当我启用另一个开关时如何禁用自动开关以及如何修复错误错误:无效的布尔值:
- swift - UIProgressView setProgress 问题
- python - setup.py 无法安装 google-cloud-pubsub