Convert-String
Memformat string untuk mencocokkan contoh.
Sintaks
Convert-String
[-Example <System.Collections.Generic.List`1[System.Management.Automation.PSObject]>]
-InputObject <String>
[<CommonParameters>]
Deskripsi
Cmdlet memformat string agar sesuai dengan format contoh.
Contoh
Contoh 1: Mengonversi format string
"Mu Han", "Jim Hance", "David Ahs", "Kim Akers" | Convert-String -Example "Ed Wilson=Wilson, E."
Han, M.
Hance, J.
Ahs, D.
Akers, K.
Perintah pertama membuat array yang berisi nama depan dan belakang.
Perintah kedua memformat nama sesuai dengan contoh. Ini menempatkan nama keluarga pertama dalam output, diikuti oleh awal.
Contoh 2: Menyederhanakan format string
$composers = @("Johann Sebastian Bach", "Wolfgang Amadeus Mozart", "Frederic Francois Chopin", "Johannes Brahms")
$composers | Convert-String -Example "first middle last=last, first"
Bach, Johann
Mozart, Wolfgang
Chopin, Frederic
Brahms, Johannes
Perintah pertama membuat array yang berisi nama depan, tengah, dan belakang. Perhatikan bahwa entri terakhir tidak memiliki nama tengah.
Perintah kedua memformat nama sesuai dengan contoh. Ini menempatkan nama belakang terlebih dahulu dalam output, diikuti dengan nama depan. Semua nama tengah dihapus; entri tanpa nama tengah ditangani dengan benar.
Contoh 3: Manajemen output saat string tidak cocok dengan contoh
$composers = @("Johann Sebastian Bach", "Wolfgang Amadeus Mozart", "Frederic Francois Chopin", "Johannes Brahms")
$composers | Convert-String -Example "first middle last=middle, first"
Sebastian, Johann
Amadeus, Wolfgang
Francois, Frederic
Perintah pertama membuat array yang berisi nama depan, tengah, dan belakang. Perhatikan bahwa entri terakhir tidak memiliki nama tengah.
Perintah kedua memformat nama sesuai dengan contoh. Ini menempatkan nama tengah terlebih dahulu dalam output, diikuti dengan nama depan. Entri terakhir dilewati $Composers
, karena tidak cocok dengan pola sampel: tidak memiliki nama tengah.
Contoh 4: Hati-hati dengan ruang kecantikan
$composers = @("Antonio Vivaldi", "Richard Wagner ", "Franz Schubert", "Johannes Brahms ")
$composers | Convert-String -Example "Patti Fuller = Fuller, P."
Wagner, R.
Brahms, J.
Perintah pertama membuat array nama depan dan belakang. Perhatikan bahwa item kedua dan keempat memiliki spasi tambahan setelah nama belakang.
Perintah kedua mengonversi semua string yang cocok dengan pola sampel: kata, spasi, kata, dan spasi akhir berikutnya, semua ini sebelum tanda sama dengan(=
). Selain itu, perhatikan ruang di depan dalam output.
Contoh 5: Memformat informasi proses dengan beberapa pola
$ExamplePatterns = @(
@{before='"Hello","World"'; after='World: Hello'},
@{before='"Hello","1"'; after='1: Hello'},
@{before='"Hello-World","22"'; after='22: Hello-World'},
@{before='"hello world","333"'; after='333: hello world'}
)
$Processes = Get-Process | Select-Object -Property ProcessName, Id | ConvertTo-Csv -NoTypeInformation
$Processes | Convert-String -Example $ExamplePatterns
Id: ProcessName
4368: AGSService
8896: Amazon Music Helper
4420: AppleMobileDeviceService
...
11140: git-bash
0: Idle
...
56: Secure System
...
13028: WmiPrvSE
2724: WUDFHost
2980: WUDFHost
3348: WUDFHost
$ExamplePatterns mendefinisikan pola yang diharapkan yang berbeda dalam data, melalui contoh.
Pola pertama, @{before='"Hello","World"'; after='World: Hello'}
, dibaca sebagai berikut:
- mengharapkan string di mana kata diapit dalam tanda kutip ganda, lalu koma,
- dan kemudian kata kedua, dan terakhir, diapit dalam tanda kutip;
- tanpa spasi dalam string. Pada output: tempatkan kata kedua terlebih dahulu,
- tanpa tanda kutip, lalu spasi tunggal, lalu kata pertama, tanpa tanda kutip.
Pola kedua, @{before='"Hello","1"'; after='1: Hello'}
, dibaca sebagai berikut:
- mengharapkan string di mana kata diapit dalam tanda kutip ganda, lalu koma,
- dan kemudian angka diapit dalam tanda kutip;
- tanpa spasi dalam string. Pada output: tempatkan angka terlebih dahulu,
- tanpa tanda kutip, lalu spasi tunggal, lalu kata, tanpa tanda kutip.
Pola ketiga, @{before='"Hello-World","22"'; after='22: Hello-World'}
, dibaca sebagai berikut:
- mengharapkan string di mana dua kata dengan tanda hubung di antaranya diapit
- tanda kutip ganda, lalu koma, lalu angka diapit dalam tanda kutip;
- tanpa spasi antara koma dan kutipan ganda ketiga.
- Pada output: tempatkan angka terlebih dahulu, tanpa tanda kutip, lalu spasi tunggal,
- dan kemudian kata-kata yang dipengaruhi, tanpa tanda kutip.
Keempat, dan terakhir, pola, @{before='"hello world","333"'; after='333: hello world'}
, dibaca sebagai berikut:
- mengharapkan string di mana dua kata dengan spasi di antaranya diapit
- tanda kutip ganda, lalu koma, lalu angka diapit dalam tanda kutip;
- tanpa spasi antara koma dan kutipan ganda ketiga.
- Pada output: tempatkan angka terlebih dahulu, tanpa tanda kutip, lalu spasi tunggal,
- dan kemudian kata-kata dengan spasi di antara, tanpa tanda kutip.
Perintah pertama mendapatkan semua proses dengan menggunakan cmdlet Get-Process. Perintah meneruskannya ke cmdlet Select-Object, yang memilih nama proses dan ID proses. Di akhir alur, perintah mengonversi output menjadi nilai yang dipisahkan koma, tanpa informasi jenis, dengan menggunakan cmdlet ConvertTo-Csv. Perintah menyimpan hasil dalam variabel $Processes . $Processes sekarang berisi nama proses dan PID.
Perintah kedua menentukan contoh variabel yang mengubah urutan item input. Perintah mencakup setiap string di $Processes
.
Catatan
Pola keempat secara implisit mengatakan bahwa dua kata atau lebih yang dipisahkan oleh spasi dicocokkan. Tanpa pola keempat, hanya kata pertama string yang diapit tanda kutip ganda yang cocok.
Parameter
-Example
Menentukan daftar contoh format target. Tentukan pasangan yang dipisahkan oleh tanda sama dengan (=
), dengan pola sumber di sebelah kiri dan pola target di sebelah kanan, seperti dalam contoh berikut:
-Example "Hello World=World, Hello"
-Example "Hello World=World: Hello",'"Hello","1"=1: Hello'
Catatan
Contoh kedua menggunakan daftar pola
Atau, tentukan daftar tabel hash yang berisi properti Sebelum dan Sesudah .
-Example @{before='"Hello","World"'; after='World: Hello'}, @{before='"Hello","1"'; after='1: Hello'}
Perhatian
Hindari menggunakan spasi di sekitar tanda sama dengan(=
), karena diperlakukan sebagai bagian dari pola.
Type: | List<T>[PSObject] |
Aliases: | E |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Menentukan string yang akan diformat.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Input
String
Anda dapat menyalurkan string ke cmdlet ini.
Output
String
Cmdlet ini mengembalikan string.
Link Terkait
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk