当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

作者:精品下载站 日期:2024-12-14 04:50:17 浏览:14 分类:玩电脑

PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例


[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

PowerShell 修剪简介

PowerShell Trim() 方法(Trim()、TrimStart() 和 TrimEnd())用于从字符串或原始数据(如 CSV 文件、XML 文件或文本文件)中删除前导和尾随空格以及不需要的字符可以转换为字符串并返回新字符串。这些方法是 System.String .Net 类的一部分,一旦应用这些方法,它就会生成新字符串,而不是操作当前字符串。

语法:

  • Trim():修剪(删除)当前字符串对象中的所有前导和尾随空白字符。
  • Trim(Char[]):它会从当前字符串对象中删除所有前导和尾随字符。
  • TrimeStart:它从当前字符串对象的开头删除所有出现的字符。
  • TrimEnd:它从当前字符串对象的末尾删除所有出现的字符。

Trim 函数在 PowerShell 中如何工作?

Trim() 方法是 System.String .NET 类方法,用于消除前导和/或尾随字符,包括字符串中的空格。它们仅在字符串类中可用。

代码:

$str = " This is a PowerShell String "
$str | gm

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

在上面的输出中,所有 Trim() 方法都返回一个字符串,该字符串是操作后的新字符串,这就是为什么如果需要对其进行进一步操作,我们需要将其存储到 new 变量中。其他数据类型不支持 Trim() 方法。

PowerShell 修剪示例

下面给出了 PowerShell Trim 的示例:

示例 #1 - Trim() 方法。

此函数将从字符串对象中删除前导和尾随空格,如下所示。

代码:

$str = " This is a PowerShell String "
$str.Trim()

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

您可能已经注意到它生成了一个新字符串。我们可以将此字符串保存到新变量中以供以后使用。

代码:

$str = " This is a PowerShell String "
$str1 = $str.Trim()
$str1

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

您还可以直接传递字符串而不是变量并对其进行操作。

代码:

(" This is a PowerShell String ").Trim()

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

它只是删除空格,因此我们将在修剪空格之前和之后检查输出长度,因为修剪后的空格可能在输出中不可见。

代码:

$str = " This is a PowerShell String "
$str.Length
29

删除空格后。

代码:

$str1 = $str.Trim()
$str1.Length
27

示例 #2 - Trim(Char) 方法来修剪特定字符。

假设我们有下面的字符串来修剪它的开始和结束字符。

代码:

$str = "aThis is a PowerShell String"
$str.Trim('a')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

这里我们提供了一个要修剪的字符“a”,并且在字符串中,“a”位于字符串的开头,但不在脚本的末尾。所以它只删除起始字符。如果“a”位于两端,则前导和尾随字符“a”将被删除。

代码:

$str = "aThis is a PowerShell Stringa"
$str.Trim('a')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

下面也是同样的操作。

代码:

$str.Trim("a"," ")

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

问题是,如果我们有前导或尾随空格并且我们提供了要删除的第一个字符,该怎么办?

代码:

$str = " aThis is a PowerShell String"
$str.Trim('a')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

该命令不会对字符串执行任何操作,因为它的前导字符是空格。

请注意,修剪特定字符是区分大小写的操作。

代码:

$str = "aThis is string trimming"
$str.Trim('A')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

代码:

$str.Trim('G')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

示例 #3 - Trim (Unicode) 方法来修剪特定字符。

PowerShell 的好处是我们还可以传递 Unicode 字符,然后类型转换为字符数据以修剪前导和尾随字符。

代码:

$str = "aThis is string trimming"
$str.Trim([char]0x0061)

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

您可以在下面的链接中找到 Unicode 字符列表。

https://en.wikipedia.org/wiki/List_of_Unicode_characters。

与上面的例子类似。

代码:

$str = "aThis is string trimming"
$str.Trim([char]0x0061,[char]0x0020)

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

这里 0x0061 代表“a”,0x0020 代表空格。

示例 #4 - Trim (Char[]) 方法删除前导和尾随空格。

在上面的示例中,我们使用了单个字符,如果匹配,则从字符串的开头或结尾删除该字符。如果我们提供多个字符,它将从前导和尾随字符中删除它们。通过下面的例子可以理解解释。

代码:

("hello world").Trim('hd')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

我们提供了两个字符“hd”,它将检查字符串开头和结尾的字符,如果匹配,它将删除它们。

代码:

("dhello world").Trim('hd')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

从上面的例子中我们可以看出,字符顺序并不重要。

您还可以使用此方法删除整个单词。

代码:

$str = "PowerShell hello PowerShell"
$str.Trim('PowerShell')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

示例 #5 - TrimStart(Char) 方法。

在 Trim() 方法中,我们可以删除前导字符和尾随字符,而 TrimStart() 只删除前导字符,如下例所示。

代码:

$str = "PowerShell helloP"
$str.TrimStart('P')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

如果里面没有指定字符,则会将空格视为一个字符,并remove消除开头的空格。

代码:

$str = " Hello World "
$str.TrimStart()

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

在此示例中,尾随空白已被删除;我们可以通过统计单词数来检查。

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

示例 #6 - TrimStart(Char[]) 方法。

我们还可以使用多个前导字符从字符串中删除。

代码:

$str = "PowerShell hello PowerShell"
$str.TrimStart("PowerShell")

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

示例#7 - TrimEnd() 方法。

我们可以使用 TrimEnd() 方法删除尾随字符。

如果我们不指定任何内容,它将删除结尾空格,但不会删除尾随空格。

代码:

$str = " Hello World "
$str.TrimEnd()

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

一旦我们在此方法中指定任何字符,它就会从字符串中删除尾随字符。

代码:

PS C:\> $str = "dHello World"
PS C:\> $str.TrimEnd('d')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

如果末尾指定了多个相同的字符,它将删除所有尾随的相同字符。

代码:

$str = "dHello Wordd"
$str.TrimEnd('d')

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

我们还可以消除多个尾随字符。

代码:

$str = "Hello PowerShell Hello"
$str.TrimEnd("Hello")

输出:

[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例

结论

修剪函数对于字符串操作非常有帮助,特别是当我们处理文本文件或 CSV 文件并且需要从字符串中删除一些条目时。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯