[玩转系统] PowerShell 修剪 | PowerShell 中的 Trim 函数如何工作?示例
作者:精品下载站 日期:2024-12-14 04:50:17 浏览:14 分类:玩电脑
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
输出:
在上面的输出中,所有 Trim() 方法都返回一个字符串,该字符串是操作后的新字符串,这就是为什么如果需要对其进行进一步操作,我们需要将其存储到 new 变量中。其他数据类型不支持 Trim() 方法。
PowerShell 修剪示例
下面给出了 PowerShell Trim 的示例:
示例 #1 - Trim() 方法。
此函数将从字符串对象中删除前导和尾随空格,如下所示。
代码:
$str = " This is a PowerShell String "
$str.Trim()
输出:
您可能已经注意到它生成了一个新字符串。我们可以将此字符串保存到新变量中以供以后使用。
代码:
$str = " This is a PowerShell String "
$str1 = $str.Trim()
$str1
输出:
您还可以直接传递字符串而不是变量并对其进行操作。
代码:
(" This is a PowerShell String ").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')
输出:
这里我们提供了一个要修剪的字符“a”,并且在字符串中,“a”位于字符串的开头,但不在脚本的末尾。所以它只删除起始字符。如果“a”位于两端,则前导和尾随字符“a”将被删除。
代码:
$str = "aThis is a PowerShell Stringa"
$str.Trim('a')
输出:
下面也是同样的操作。
代码:
$str.Trim("a"," ")
输出:
问题是,如果我们有前导或尾随空格并且我们提供了要删除的第一个字符,该怎么办?
代码:
$str = " aThis is a PowerShell String"
$str.Trim('a')
输出:
该命令不会对字符串执行任何操作,因为它的前导字符是空格。
请注意,修剪特定字符是区分大小写的操作。
代码:
$str = "aThis is string trimming"
$str.Trim('A')
输出:
代码:
$str.Trim('G')
输出:
示例 #3 - Trim (Unicode) 方法来修剪特定字符。
PowerShell 的好处是我们还可以传递 Unicode 字符,然后类型转换为字符数据以修剪前导和尾随字符。
代码:
$str = "aThis is string trimming"
$str.Trim([char]0x0061)
输出:
您可以在下面的链接中找到 Unicode 字符列表。
https://en.wikipedia.org/wiki/List_of_Unicode_characters。
与上面的例子类似。
代码:
$str = "aThis is string trimming"
$str.Trim([char]0x0061,[char]0x0020)
输出:
这里 0x0061 代表“a”,0x0020 代表空格。
示例 #4 - Trim (Char[]) 方法删除前导和尾随空格。
在上面的示例中,我们使用了单个字符,如果匹配,则从字符串的开头或结尾删除该字符。如果我们提供多个字符,它将从前导和尾随字符中删除它们。通过下面的例子可以理解解释。
代码:
("hello world").Trim('hd')
输出:
我们提供了两个字符“hd”,它将检查字符串开头和结尾的字符,如果匹配,它将删除它们。
代码:
("dhello world").Trim('hd')
输出:
从上面的例子中我们可以看出,字符顺序并不重要。
您还可以使用此方法删除整个单词。
代码:
$str = "PowerShell hello PowerShell"
$str.Trim('PowerShell')
输出:
示例 #5 - TrimStart(Char) 方法。
在 Trim() 方法中,我们可以删除前导字符和尾随字符,而 TrimStart() 只删除前导字符,如下例所示。
代码:
$str = "PowerShell helloP"
$str.TrimStart('P')
输出:
如果里面没有指定字符,则会将空格视为一个字符,并remove消除开头的空格。
代码:
$str = " Hello World "
$str.TrimStart()
输出:
在此示例中,尾随空白已被删除;我们可以通过统计单词数来检查。
示例 #6 - TrimStart(Char[]) 方法。
我们还可以使用多个前导字符从字符串中删除。
代码:
$str = "PowerShell hello PowerShell"
$str.TrimStart("PowerShell")
输出:
示例#7 - TrimEnd() 方法。
我们可以使用 TrimEnd() 方法删除尾随字符。
如果我们不指定任何内容,它将删除结尾空格,但不会删除尾随空格。
代码:
$str = " Hello World "
$str.TrimEnd()
输出:
一旦我们在此方法中指定任何字符,它就会从字符串中删除尾随字符。
代码:
PS C:\> $str = "dHello World"
PS C:\> $str.TrimEnd('d')
输出:
如果末尾指定了多个相同的字符,它将删除所有尾随的相同字符。
代码:
$str = "dHello Wordd"
$str.TrimEnd('d')
输出:
我们还可以消除多个尾随字符。
代码:
$str = "Hello PowerShell Hello"
$str.TrimEnd("Hello")
输出:
结论
修剪函数对于字符串操作非常有帮助,特别是当我们处理文本文件或 CSV 文件并且需要从字符串中删除一些条目时。
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag