一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - PowerShell - PowerShell String對象方法小結

PowerShell String對象方法小結

2020-07-05 10:48 PowerShell

這篇文章主要介紹了PowerShell String對象方法,需要的朋友可以參考下

從之前的章節中,我們知道PowerShell將一切存儲在對象中,那這些對象中包含了一系列中的稱之為方法的指令。默認文本存儲在String對象中,它包含了許多非常有用的處理文本的命令。例如,要確定一個文件的擴展名,可以使用LastIndexOf()獲取最后一個字符“.”的位置,繼續使用Substring()獲取擴展名子串。

?
1
2
3
PS> $path = "C:prefs.js"
PS> $path.Substring( $path.LastIndexOf(".")+1 )
Js

另外一條途徑,使用Split方法,對文件的完整名稱進行分割,得到一個字符串數組,取最后一個元素,PowerShell中可以通過索引-1來獲取數組中最后一個元素。

?
1
2
PS> $path.Split(".")[-1]
Js

下面的表格會給出String對象的所有方法:

 

函數 描述 示例
CompareTo() 與另一個字符串比較 (“Hello”).CompareTo(“Hello”)
Contains() 是否包含制定子串 (“Hello”).Contains(“ll”)
CopyTo() 拷貝子串至新字符串中 $a = (“HelloWorld”).toCharArray()(“User!”).CopyTo(0,

 

$a, 6, 5)$a

EndsWith() 是否以制定子串結尾 (“Hello”).EndsWith(“lo”)
Equals() 是否與另一個字符串相同 (“Hello”).Equals($a)
IndexOf() 返回第一次匹配的所索引 (“Hello”).IndexOf(“l”)
IndexOfAny() 返回字符串中任意字符的首次匹配索引 (“Hello”).IndexOfAny(“loe”)
Insert() 在指定位置插入字符串 (“HelloWorld”).Insert(6,”brave “)
GetEnumerator() 枚舉字符串中所有字符 (“Hello”).GetEnumerator()
LastIndexOf() 字符的最后匹配位置 (“Hello”).LastIndexOf(“l”)
LastIndexOfAny() 任意字符的最后匹配位置 (“Hello”).LastIndexOfAny(“loe”)
PadLeft() 左邊補齊空白是字符串至指定長度 (“Hello”).PadLeft(10)
PadRight() 右邊填充空白是字符串至指定長度 (“Hello”).PadRight(10) + “World!”
Remove() 從指定位置開始移除指定長度 (“PsTips”).Remove(2,2)
Replace() 替換指定字符串 (“PsTips”).replace(“Ps”,”PS1″)
Split() 以指定分隔符切割字符串 (“HelloWorld”).Split(“l”)
StartsWith() 是否以指定子串開始 (“HelloWorld”).StartsWith(“He”)
Substring() 從指定位置取指定長度子串 “HelloWorld”).Substring(4,3)
ToCharArray() 轉換成字符數組 (“HelloWorld”).toCharArray()
ToLower() 轉換成小寫 (“HelloWorld”).toLower()
ToLowerInvariant

 

()

以區域規則轉換成小寫 (“HelloWorld”).ToUpperInvariant()
ToUpper() 轉換成大寫 (“HelloWorld”).ToUpper()
ToUpperInvariant

 

()

以區域規則轉換成大寫 (“HelloWorld”).ToUpperInvariant

 

()

Trim() 移除字符串前后空格 (” HelloWorld “). Trim()
TrimEnd() 移除字符串結尾的空格 (“HelloWorld “). TrimEnd()
TrimStart() 移除字符串開始的空格 (” HelloWorld”). TrimStart()
Chars() 返回指定位置的字符 (“Hello”).Chars(0)

 

 

以Split()為例來分析方法

在之前的章節中,我們已經知道可以通過Get-Member來查看一個對象中包含了那些可以被調用的方法。正好最為一個簡單的回顧,來查看Split的定義。

?
1
2
3
PS C:> ("zzvips.com" | Get-Member Split).definition
string[] Split(Params char[] separator), string[] Split(char[] separator, int count), string[] Split(char[] separator, System.StringSplitOptions options), string[] Split(char[] separator, int count, System.StringSplitOptions options), string[] Split(string[] separator, System.StringSplitOptions options), string[] Split(string[] sepa
rator, int count, System.StringSplitOptions options)

Define屬性可以獲取方法參數定義,但是可讀性比較坑爹。我們仍然用上面表格中的Replace方法,將分隔符稍作替換,即可增強可讀性。

?
1
2
3
4
5
6
7
PS C:> ("zzvips.com" | Get-Member Split).definition.Replace("), ", ")`n")
string[] Split(Params char[] separator)
string[] Split(char[] separator, int count)
string[] Split(char[] separator, System.StringSplitOptions options)
string[] Split(char[] separator, int count, System.StringSplitOptions options)
string[] Split(string[] separator, System.StringSplitOptions options)
string[] Split(string[] separator, int count, System.StringSplitOptions options)

之前說過反引號,類似高級語言中的轉義符反斜杠。

從上面的輸出可以發現Split有6種不同的調用方法,而之前可能更多的只使用過一個參數的方法。PowerShell在處理文本時,可能會碰到多個分隔符,而Split方法調用只須一次即可。

?
1
2
3
4
5
6
PS C:> "http://m.ythuaji.com.cn".split(":./")
http
 
www
pstips
net

中間有空白,咋整,能移除嗎,StringSplitOptions輕裝上陣:

?
1
2
3
4
5
PS C:> "http://m.ythuaji.com.cn".split(":./",[StringSplitOptions]::RemoveEmptyEntries)
http
www
pstips
net

之前有一個小算法題,移除字符串中相鄰的重復的空格。在不考慮效率的前提下,可以使用Split先分割,分割后再將得到的元素以指定分隔符拼接。但是拼接用到的Join方法,并不屬于string對象,而屬于String類,也正是下面要講的。

Text and Regular Expressions

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产自在线观看 | 免费一级毛片在级播放 | 成人中文字幕在线高清 | 成人网子 | 深夜福利影院在线观看 | 亚洲久草在线 | 亚洲国产剧情中文视频在线 | 日韩高清成人毛片不卡 | 紧致肉肉高h| 91在线精品视频 | 好男人在线观看免费高清2019韩剧 | 国产欧美国产综合第一区 | 花核调教 | yy6080午夜国产免费福利 | 久久99视热频国只有精品 | 久久国产36精品色熟妇 | 欧乱色国产精品兔费视频 | 脱jk裙的美女露小内内无遮挡 | 国产精品免费视频一区一 | 国产精品久久久99 | 国产成人精品免费视频软件 | 久久久无码精品亚洲A片猫咪 | 手机在线免费观看视频 | 亚飞与亚基国语1080p在线观看 | 国产欧美综合一区二区 | 精品人伦一区二区三区潘金莲 | 清纯漂亮女友初尝性过程 | 99热久热这里只精品 | 欧美人与禽交片在线播放 | 乖女的嫩奶水h文孕妇 | 欧美成人日韩 | 国产精品女同久久免费观看 | 视频一本大道香蕉久在线播放 | 欧美ggg666 | 亚洲va国产日韩欧美精品色婷婷 | 久久受www免费人成_看片中文 | 精品一区二区三区在线成人 | 日韩精品免费一级视频 | 故意短裙公车被强好爽在线播放 | 国产成人啪精品午夜在线播放 | 免费午夜剧场 |