簡體   English   中英

如何刪除字符串中的多個字符

[英]How do I remove multiple characters in a string

我一直在努力尋找將刪除命令串在一起的最好方法,但是我不知道如何在一個字符串與多個字符串中執行此操作...我想要刪除所有空格和所有下划線; 我知道我可以這樣單獨做:

$Name = "\Test Name\Test_Underscore 1_2"
$NameFull1 = $NAME -replace '\s'
$NameFull2 = $NameFull1 -replace '_',''

並有這樣的輸出:

TestNameTestUnderscore12

但是我只想做一次,但我不確定如何將它們結合起來(我現在一直在尋找一段時間而無法找到答案)。

我當時認為它看起來像這樣(我還嘗試了其他一些方法),但一直遇到錯誤......

$Name = "\Test Name\Test_Underscore 1_2"
$NameFull = $NAME -replace '\s' | '_',''

我建議將你需要刪除的字符放入一個字符類

使用“字符類”,也稱為“字符集”,您可以告訴正則表達式引擎只匹配多個字符中的一個。 只需將要匹配的字符放在方括號中即可。 如果要匹配ae ,請使用[ae] 你可以在gr[ae]y使用它來匹配graygrey

碼:

PS> $Name = "\Test Name\Test_Underscore 1_2"
PS> $NameFull1 = $NAME -replace '[\s_\\]+'
PS> $NameFull1
TestNameTestUnderscore12

[\\s_\\\\]將匹配空格, _\\

管道符號( | )必須位於字符串內才能進行更改:

$NameFull = $NAME -replace '\s|_', ''

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM