【发布时间】:2021-03-12 15:20:38
【问题描述】:
我正在寻找一种简洁的方法来对 csv 文件列中的值进行去标识化。我的工作方式有点像计数值等的技巧,我想看看是否有更现实的方法来解决这个问题。输入类似于:
One~Two~Three~Four
Test One~Failed for account 999999999, UserId: 7777777, Error: Duplicate nickname~8abc-964863c382d8~3/11/2021 1:03:43 PM
Test One~Failed for account 121212121, UserId: 3434343, Error: Duplicate firstname~zzzz-964863c382d8~3/11/2021 1:04:43 PM
Test One~Failed for account 565656565, UserId: 7878787, Error: Duplicate firstname~yyyy-964863c382d8~3/11/2021 1:05:43 PM
并且需要输出是这样的,把userId和账号换成x的:
One~Two~Three~Four
Test One~Failed for account XXXXXXXXX, UserId: XXXXXXX, Error: Duplicate nickname~8abc-964863c382d8~3/11/2021 1:03:43 PM
Test One~Failed for account XXXXXXXXX, UserId: XXXXXXX, Error: Duplicate firstname~zzzz-964863c382d8~3/11/2021 1:04:43 PM
Test One~Failed for account XXXXXXXXX, UserId: XXXXXXX, Error: Duplicate firstname~yyyy-964863c382d8~3/11/2021 1:05:43 PM
会有其他数据行,它们可能没有这些类型的行,但我只想在两列中识别这两种类型的值。任何想法将不胜感激!
【问题讨论】:
-
如果它们的位数总是相同,前面有相同的单词,我认为使用正则表达式替换会为您工作。
-
他们会一直处于相同的环境中吗? IE。帐户 ID 前面是文本“帐户”,后面是逗号?
-
是的,它们将与上面完全相同 - 即。 account id 前面是文本“account”,后面是逗号,然后是 UserId: 和 number
标签: powershell csv