gpt4 book ai didi

regex - 正则表达式:过滤字符串

转载 作者:行者123 更新时间:2023-12-03 00:51:42 26 4
gpt4 key购买 nike

对于其他进程,我想将以下行拆分为对象。
该行来自我们的Exchange传入SMTP日志文件。

2014-05-23T08:38:58.869Z,Exchangeserver\External Relay,08D1437A9AEFF27B,5,192.168.100.211:25,192.168.100.211:46964,<,MAIL FROM: <prvs=0220d28471=user@domain.eu>

使用正则表达式可以做到这一点吗?

所需输出:
Time: 08:38:58
Connector: Exchangeserver\External Relay
ExchangeID:08D1437A9AEFF27B
MailFrom:user@domain.eu

对不起,正则表达式对我的大脑来说太重了。
:(

非常感谢!

最佳答案

您只需要使用正则表达式来添加电子邮件。您可以使用-split拆分列:)

$arr = @("2014-05-23T08:38:58.869Z,Exchangeserver\External Relay,08D1437A9AEFF27B,5,192.168.100.211:25,192.168.100.211:46964,<,MAIL FROM: <prvs=0220d28471=user@domain.eu> " -split ",")

$ht = [ordered]@{}
$ht["Time"] = $arr[0]
$ht["Connector"] = $arr[1]
$ht["ExchangeID"] = $arr[2]
$ht["MailFrom"] = $($arr[7] -match "([^=@]+@[^>]+)" | Out-Null; $matches[1])

$ht

然后,您可以格式化哈希表中的结果以获取所需的输出。

关于regex - 正则表达式:过滤字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23828914/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com