Powershell-如何拆分简单文本文件并覆盖原始文件

Powershell-如何拆分简单文本文件并覆盖原始文件,powershell,split,Powershell,Split,假设我有一个文本文件file.txt,里面有这样一个文件:something.ab-cdefgh-jk-lmno-1.pqr-stuv-a.z.something-xy.somethingelse 我想改写文件,使其看起来像这样:something.ab-cdefgh-jk-lmno-1 我尝试过一些与split有关的事情,但我是一个powershell noob,我认为我做得不对。我试着跟随,但我似乎不明白如何把它应用到我的问题上。一如既往,我们非常感谢您的帮助 更多信息:在我的脚本中,我点击

假设我有一个文本文件file.txt,里面有这样一个文件:something.ab-cdefgh-jk-lmno-1.pqr-stuv-a.z.something-xy.somethingelse 我想改写文件,使其看起来像这样:something.ab-cdefgh-jk-lmno-1

我尝试过一些与split有关的事情,但我是一个powershell noob,我认为我做得不对。我试着跟随,但我似乎不明白如何把它应用到我的问题上。一如既往,我们非常感谢您的帮助


更多信息:在我的脚本中,我点击了一个API来生成一个带有字符串的文件。API不提供分割或更改结果的方法。我最终得到的文件是一个字符串,里面有一堆我不想要的东西。我只想要第二节课之前的内容。

在你的评论中解释了这一点后,这是一个相当简单的拆分和合并

$content = 'something.ab-cdefgh-jk-lmno-1.pqr-stuv-a.z.something-xy.somethingelse'
$content = ($content -split '\.')[0..1] -join '.'
[0..1]将获取数组的第一部分和第二部分,然后执行一个-join'.'将这两个位重新组合在一起。
-split'\.'需要\来转义。as-split接受正则表达式Regex

在您的评论中解释了这一点之后,它是一个相当简单的拆分和联接

$content = 'something.ab-cdefgh-jk-lmno-1.pqr-stuv-a.z.something-xy.somethingelse'
$content = ($content -split '\.')[0..1] -join '.'
[0..1]将获取数组的第一部分和第二部分,然后执行一个-join'.'将这两个位重新组合在一起。
-split'\.'需要\来转义。as-split接受正则表达式Regex

如果您想要一个包含特定内容的文件,为什么不创建一个包含特定内容的新文件呢?如果这不是你想要实现的,你可以详细说明你的挑战是什么。请显示您的代码。您的[WORDS].[WORDS].[IGNORE REST]正确吗?您好@Olaf。在我的脚本中,我点击一个API生成一个带有字符串的文件。API不提供分割或更改结果的方法。我最终得到的文件是一个字符串,里面有一堆我不想要的东西。我只想在第二节课之前拿到这些东西。我通常不在Windows上工作,所以像这样简单的事情被证明是困难的。是的@Drew。没错。@Kryten你应该用这些信息更新你的问题。目前,那些愿意帮助你的人误解了你-如果您想要一个包含特定内容的文件,为什么不创建一个包含特定内容的新文件呢?如果这不是你想要实现的,你可以详细说明你的挑战是什么。请显示您的代码。您的[WORDS].[WORDS].[IGNORE REST]正确吗?您好@Olaf。在我的脚本中,我点击一个API生成一个带有字符串的文件。API不提供分割或更改结果的方法。我最终得到的文件是一个字符串,里面有一堆我不想要的东西。我只想在第二节课之前拿到这些东西。我通常不在Windows上工作,所以像这样简单的事情被证明是困难的。是的@Drew。没错。@Kryten你应该用这些信息更新你的问题。目前,那些愿意帮助你的人误解了你-非常感谢你的解释。我现在更了解分裂了。我将对其进行测试,并让您知道这是否奏效。对于非正则表达式拆分,您可以使用[string]类的.split方法$content.Split'.[0..1]-join'.…或者如果您使用的是Regex,您可以一次获得字符串,而不必使用$content-replace'.分割并连接?非常感谢您的解释。我现在更了解分裂了。我将对其进行测试,并让您知道这是否奏效。对于非正则表达式拆分,您可以使用[string]类的.split方法$content.Split'.[0..1]-join'.…或者如果您使用的是正则表达式,您可以一次获得字符串,而不必拆分并使用$content-replace'?