PowerShell string contains
Yksityisyys &evästeet
Tämä sivusto käyttää evästeitä. Jatkamalla hyväksyt niiden käytön. Lue lisää, mukaan lukien evästeiden hallinta.
miten voit tarkistaa, sisältääkö PowerShell-merkkijono merkin tai substraatin?
saatat tuntea kiusausta kokeilla tätä:
PS> $s = ”abcdefghijk”
PS> $s-Sisältää ” f ”
False
mutta –Sisältää on matriisien sisällön työstämiseen. Näin voisi siis tehdä:
PS> ($s.ToCharArray()) -sisältää ” f ”
totta
muunnat epäsuorasti merkkijonon ” f ” vertailun tekemiseksi. Vertauksesi on oikeastaan tämä
PS> ($s.ToCharArray()) -sisältää”f”
tosi
se on hieno yksimerkkinen, mutta jos haluat testata substraattia
PS> $s-Sisältää ” def ”
False
PS> ($s.ToCharArray()) -sisältää ” def ”
väärä
tuo lähestymistapa ei toimi.
on käytettävä Indeksointimenetelmää
PS> $s.Indexof (”f”)
5
PS> $s.Indexof (”def”)
3
palautettu arvo on substraatin ensimmäisen merkin sijainti.
voit myös testata an-merkin
PS> $a = ”g”,”j”,”a”
PS> $s.IndexOfAny($a)
0
jälleen saat ensimmäisen merkin tässä tapauksessa ” A ”
muista PowerShell on.net-pohjainen, joten ensimmäinen indeksi on 0
lets get some toiston into our target
PS> $S = $S * 3
PS> $s
abcdefghijkabcdefghijk
myös voit valita substraatin viimeisen esiintymän
PS> $s.LastIndexOf (”f”)
27
PS> $s.LastIndexOfAny ($a)
31
Tämä viimeinen on merkkijonon viimeinen ” j ” – sen viimeinen esiintymä, johon halusi yhtyä.
Jos ei ole ottelua saat -1 palautettua
PS> $s.IndexOf (”z”)
-1
PS> $s.LastIndexOf (”z”)
-1
Leave a Reply