PowerShell'de Bir Dizedeki Karakter Sayısı Nasıl Sayılır
Son zamanlarda PowerShell'de bir dizedeki karakter sayısını kontrol etme gereksinimi duydum. PowerShell bunu yapmak için farklı yöntemler sunar. Bu derste size PowerShell'de çeşitli yöntemler kullanarak bir dizedeki karakter sayısını nasıl sayacağınızı göstereceğim.
PowerShell'de bir dizedeki karakter sayısını saymak için en basit ve en doğrudan yöntem olan .Length özelliğini kullanabilirsiniz. Örneğin, $string=“Merhaba, PowerShell!”; $charCount=$string.Length, karakter sayısını $charCount'ta saklar.
Yöntem 1: .Length Özelliğini Kullanma
PowerShell'de bir dizedeki karakter sayısını saymak için .Length özelliğini kullanabilirsiniz. Bu özellik, PowerShell'deki tüm dize nesnelerinde mevcuttur ve dizedeki toplam karakter sayısını döndürür.
İşte tam bir örnek.
# Define a string
$string = "Hello, PowerShell!"
# Count the number of characters using the .Length property
$charCount = $string.Length
# Output the result
Write-Output "The number of characters in the string is: $charCount"Bu örnekte çıktı şöyle olacaktır:
The number of characters in the string is: 18
Betiği VS kodunu kullanarak çalıştırdıktan sonra çıktıyı aşağıdaki ekran görüntüsünde görebilirsiniz.
PowerShell'de Büyük/Küçük Harfe Duyarsız Dize Karşılaştırmasını Okuyun
Yöntem 2: Where-Object ile Belirli Karakterleri Sayma
Bir dize içinde belirli bir karakterin geçtiği yerleri saymanız gerekiyorsa belirli karakterleri filtrelemek ve saymak için Where-Object cmdlet'ini ToCharArray() yöntemi ile birlikte kullanabilirsiniz. karakterler.
İşte tam bir PowerShell betiği.
# Define a string
$string = "Hello, PowerShell!"
# Define the character to count
$charToCount = "l"
# Convert the string to a character array and count the occurrences of the specific character
$charCount = ($string.ToCharArray() | Where-Object { $_ -eq $charToCount }).Count
# Output the result
Write-Output "The number of occurrences of '$charToCount' in the string is: $charCount"Bu örnekte çıktı şöyle olacaktır:
The number of occurrences of 'l' in the string is: 3Bu yöntem, bir dizede belirli bir karakterin kaç kez göründüğünü saymanız gerektiğinde kullanışlıdır.
Yöntem 3: Select-String ile Normal İfadeleri Kullanma
PowerShell'de bir dizedeki karakter sayısını almak için normal ifadeleri de kullanabilirsiniz. Select-String cmdlet'ini normal ifadelerle birleştirerek aynı amaç için kullanabiliriz.
İşte tam bir örnek.
# Define a string
$string = "Hello, PowerShell!"
# Define the regular expression pattern to match the character
$pattern = "l"
# Use Select-String to find matches and count them
$charCount = ($string | Select-String -Pattern $pattern -AllMatches).Matches.Count
# Output the result
Write-Output "The number of occurrences of '$pattern' in the string is: $charCount"Bu örnekte çıktı şöyle olacaktır:
The number of occurrences of 'l' in the string is: 3
Çıktıyı aşağıdaki ekran görüntüsünde görebilirsiniz:
PowerShell'de Bir Dizeye Çift Tırnak Eklemeyi Okuyun
Yöntem 4: Measure-Object'i Kullanma
Bunun için başka bir yönteme bakalım.
PowerShell'deki Measure-Object cmdlet'i ayrıca bir dizedeki karakterleri de sayabilir. Bu yöntem özellikle birden çok dizeyle uğraşırken veya birden çok satırdaki karakterleri sayarken kullanışlıdır.
İşte bir örnek.
# Define a string
$string = "Hello, PowerShell!"
# Convert the string to a character array and measure the length
$charCount = ($string.ToCharArray() | Measure-Object).Count
# Output the result
Write-Output "The number of characters in the string is: $charCount"Bu örnekte çıktı şöyle olacaktır:
The number of characters in the string is: 18Çıktıyı ekran görüntüsünde görebilirsiniz; bana tam çıktıyı verdi.
Çözüm
PowerShell'de bir dizedeki karakter sayısını saymanın en kolay yolu .Length özelliğini kullanmaktır. Ancak PowerShell'de bir dizedeki karakter sayısını almak için Measure-Object ve Select-String ile Normal İfadeler gibi diğer yöntemleri de kullanabilirsiniz.
Umarım yukarıdaki örnekler anlamanıza yardımcı olur. Hala sorularınız varsa aşağıya bir yorum bırakın.


