PowerShell: Belirli Karakterden Önce Tüm Metin Nasıl Kaldırılır


Genellikle PowerShell'de bir dizedeki belirli bir karakterden önceki tüm metni kaldırmak isteyebilirsiniz.

Bunu yapmak için aşağıdaki yöntemleri kullanabilirsiniz:

1. Yöntem: Belirli Karakterden Önce Tüm Metni Kaldır

$my_string -replace '^[^Employee]*', ''

Bu özel örnek, dizedeki "Employee" kalıbından önce geçen $my_string adlı dize değişkenindeki tüm metni kaldırır.

2. Yöntem: Belirli Karakteri İçeren ve Öncesindeki Tüm Metni Kaldır

$my_string -replace '^.*Employee'

Bu özel örnek, $my_string adlı dize değişkeninden önce geçen tüm metni kaldırır ve dizeye "Employee" kalıbını dahil eder.

Aşağıdaki komutların yaptığı şey:

  • ^: Bir dizenin başlangıcını belirtir
  • *: İstenilen miktarda karakteri belirtir

Aşağıdaki örnek, bu yöntemlerin her birinin pratikte nasıl kullanılacağını göstermektedir.

Örnek 1: PowerShell'de Belirli Karakterden Önce Tüm Metni Kaldır

Çalışan kimliği olarak kullanılan aşağıdaki dizeye sahip olduğumuzu varsayalım:

A003EmployeeGreg

Ve dizede "Çalışan"dan önce geçen tüm metni kaldırmak istediğimizi ve böylece elimizde aşağıdakilerin kaldığını varsayalım:

EmployeeGreg

Bunu yapmak için aşağıdaki sözdizimini kullanabiliriz:

$my_string = "A003EmployeeGreg"
$my_string -replace '^[^Employee]*', ''

Aşağıdaki ekran görüntüsü bu sözdiziminin pratikte nasıl kullanılacağını göstermektedir:

Bunun, "Employee" kaldırılmadan önceki tüm metinle birlikte orijinal dizeyi temsil eden EmployeeGreg değerini döndürdüğüne dikkat edin.

Örnek 2: PowerShell'den Önceki Tüm Metni Kaldırma ve Belirli Karakteri Ekleme

Bir kez daha, çalışan kimliği olarak kullanılan aşağıdaki dizeye sahip olduğumuzu varsayalım:

A003EmployeeGreg

Ve dizede "Çalışan" ifadesinin öncesinde yer alan ve bu metni de içeren tüm metni kaldırmak istediğimizi ve böylece elimizde aşağıdakilerin kaldığını varsayalım:

Greg

Bunu yapmak için aşağıdaki sözdizimini kullanabiliriz:

$my_string = "A003EmployeeGreg"
$my_string -replace '^.*Employee'

Aşağıdaki ekran görüntüsü bu sözdiziminin pratikte nasıl kullanılacağını göstermektedir:

Bunun, "Çalışan" da dahil olmak üzere öncesindeki tüm metnin kaldırıldığı orijinal dizeyi temsil eden Greg değerini döndürdüğüne dikkat edin.

Not: -replace operatörü büyük/küçük harfe duyarlı değildir. Büyük/küçük harfe duyarlı bir operatör kullanmak istiyorsanız bunun yerine -creplace komutunu kullanabilirsiniz.

İlgili makaleler