正则表达式 – 替换Powershell中的转义字符

前端之家收集整理的这篇文章主要介绍了正则表达式 – 替换Powershell中的转义字符前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
@H_301_1@
我有一个由…组成的字符串

"some text \\computername.example.com\admin$".

我怎么做替换所以我的最终结果只是“computername”

我的问题似乎不知道如何逃避两个反斜杠.为了简单起见,我宁愿不使用正则表达式:)

编辑:实际上看起来像stackoverflow也有双反斜杠的问题,它应该是一个双反斜杠,而不是单一的反斜杠

解决方法

首先,提出的正则表达式方法绝对没有错.但是,如果你对它不感兴趣,请检查:

$test = "some text \\computername.example.com\admin$"
$test.Split('\')[2].Split('.')[0]

非常简单的测试表明,我的机器上的分割速度略快于它的价值:

12:35:24 |(19)|C:\ PS>Measure-Command {1..10000 | %{'some text \\computername.example.com\admin$'.Split('\')[2].Split('.')[0]}}


Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 1
Milliseconds      : 215
Ticks             : 12159984
TotalDays         : 1.40740555555556E-05
TotalHours        : 0.000337777333333333
TotalMinutes      : 0.02026664
TotalSeconds      : 1.2159984
TotalMilliseconds : 1215.9984



12:35:34 |(20)|C:\ PS>Measure-Command {1..10000 | %{'Some text \\computername\admin$' -replace '\\\\(\w+)\\(\w+)\$','$1'}}


Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 2
Milliseconds      : 335
Ticks             : 23351277
TotalDays         : 2.70269409722222E-05
TotalHours        : 0.000648646583333333
TotalMinutes      : 0.038918795
TotalSeconds      : 2.3351277
TotalMilliseconds : 2335.1277

猜你在找的正则表达式相关文章