Articles

PowerShell string contains

X

Yksityisyys &evästeet

Tämä sivusto käyttää evästeitä. Jatkamalla hyväksyt niiden käytön. Lue lisää, mukaan lukien evästeiden hallinta.

Got It!

mainokset

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

advertises