使用正则表达式从各种字符串中获取价值

时间:2018-11-28 14:53:57

标签: powershell

我试图弄清楚如何设置一个正则表达式来从不同的数据段中查找字符串的特定部分。

IE,我有一个PC日志,文件名为TTEST7-17.txt或文件名为TTEST7-17.28-11-2018.txt

基本上,我只想要值“ TTEST7-17”,它将是PC名称。

但是无论文件名是TTEST7-17.txt还是TTEST7-17.28-11-2018.txt,它都必须提取该值

每台PC的名称和日期都不相同,因此不能仅与一个PC的名称匹配并以这种方式提取字符串。它必须以某种方式确定它的格式是否为TTEST7-17或TTEST7-17.28.11.2018.txt,然后,无论PC名称是什么,都应摆脱.txt或.28.11.2018.txt。

1 个答案:

答案 0 :(得分:1)

您可以使用split()方法。例如:

"TTEST7-17.28.11.2018.txt".Split('.')[0]

"TTEST7-17.txt".Split('.')[0]

这两个都提供TTEST7-17的输出。

当然,如果名称在变量中,您仍然可以使用此方法:

$fileName = "TTEST7-17.28.11.2018.txt"

$fileName.Split('.')[0]