Skrip Batch - rentetan

Pengenalan kepada Rentetan dalam Skrip Batch

Hai, para pemula pemrograman! Hari ini, kita akan melihat dunia yang menakjubkan dari rentetan dalam skrip Batch. Sebagai guru komputer yang ramah di lingkungan Anda, saya sangat gembira untuk memandu Anda dalam perjalanan ini. Jangan khawatir jika Anda belum pernah menulis baris kode sebelumnya – kita akan mulai dari permulaan!

Batch Script - Strings

Rentetan, dalam kata-kata sederhana, adalah urutan karakter. Itu bisa menjadi kata, kalimat, atau bahkan paragraf penuh. Dalam skrip Batch, kita selalu menggunakan rentetan untuk menampilkan pesan, menyimpan informasi, dan memanipulasi teks.

Operasi Rentetan Dasar

Menampilkan Rentetan

Mari kita mulai dengan operasi yang paling dasar – menampilkan rentetan. Dalam Batch, kita menggunakan perintah echo untuk ini.

@echo off
echo Hello, World!
pause

Simpan ini sebagai hello.bat dan jalankan. Anda akan melihat "Hello, World!" ditampilkan di layar Anda. @echo off di awal adalah praktik yang baik untuk menjaga output skrip Anda bersih, dan pause di akhir menjaga jendela terbuka sehingga Anda bisa melihat hasilnya.

Menyimpan Rentetan di Variabel

Sekarang, mari kita simpan rentetan kita di variabel:

@echo off
set message=Hello, Batch scripting!
echo %message%
pause

Di sini, kita menggunakan perintah set untuk menyimpan rentetan kita di variabel yang disebut message. Untuk menggunakan variabel, kita sekitarinya dengan tanda persen.

Concatenasi Rentetan

Menggabungkan rentetan (concatenation) adalah operasi yang umum. Dalam Batch, itu sangat sederhana seperti menempatkan mereka di sebelah yang lain:

@echo off
set firstName=John
set lastName=Doe
set fullName=%firstName% %lastName%
echo Full name: %fullName%
pause

Skrip ini akan mengeluarkan "Full name: John Doe". Perhatikan bagaimana kita menambahkan spasi antara %firstName% dan %lastName% untuk memisahkan mereka.

Bekerja dengan Input Pengguna

Buat skrip kita interaktif dengan mengambil input dari pengguna:

@echo off
set /p name=What's your name?
echo Nice to meet you, %name%!
pause

The /p switch with set memungkinkan kita untuk meminta input dari pengguna. Cobalah menjalankan skrip ini dan masukkan namamu!

Manipulasi Rentetan

Ekstraksi Substring

Batch memungkinkan kita untuk mengambil bagian dari rentetan menggunakan sintaks %variable:~start,length%:

@echo off
set message=Hello, World!
echo %message:~0,5%
echo %message:~7,5%
pause

Ini akan mengeluarkan:

Hello
World

The first echo mengambil karakter dari posisi 0 ke 5, dan yang kedua dari posisi 7 ke 5 karakter setelah itu.

Penggantian Rentetan

Kita juga dapat mengganti bagian dari rentetan:

@echo off
set phrase=The quick brown fox jumps over the lazy dog
echo %phrase:fox=cat%
pause

Ini mengganti "fox" menjadi "cat" dalam kalimat kita.

Operasi Rentetan Tingkat Lanjut

Panjang Rentetan

Batch tidak memiliki fungsi bawaan untuk mendapatkan panjang rentetan, tetapi kita dapat menggunakan solusi pintar:

@echo off
set string=Hello, World!
call :strLen string strlen
echo The length of "%string%" is %strlen%
pause
goto :eof

:strLen
setlocal enabledelayedexpansion
set "s=!%~1!"
set "len=0"
for %%N in (4096 2048 1024 512 256 128 64 32 16 8 4 2 1) do (
if "!s:~%%N,1!" neq "" (
set /a "len+=%%N"
set "s=!s:~%%N!"
)
)
endlocal & set %~2=%len%
goto :eof

Skrip ini mendefinisikan fungsi :strLen yang menghitung panjang rentetan. Itu agak kompleks, tetapi itu menunjukkan bagaimana kita dapat membuat alat kuat dalam Batch.

Konversi Kasus

Batch tidak memiliki konversi kasus bawaan, tetapi kita dapat menggunakan perintah for dengan opsi /L untuk mencapai ini:

@echo off
set string=Hello, World!
call :toUpper string result
echo Upper case: %result%
call :toLower string result
echo Lower case: %result%
pause
goto :eof

:toUpper
for %%a in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do call set %2=%%%2:%%a=%%a%%%
goto :eof

:toLower
for %%a in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do call set %2=%%%2:%%A=%%a%%%
goto :eof

Skrip ini mendefinisikan dua fungsi: :toUpper dan :toLower untuk konversi kasus.

Kesimpulan

Selamat! Anda baru saja mengambil langkah pertama Anda ke dalam dunia manipulasi rentetan dalam skrip Batch. Ingat, latihan membuat sempurna, jadi jangan khawatir untuk mencoba konsep ini. Cobalah menggabungkan teknik yang berbeda yang kita belajar hari ini untuk membuat skrip Anda sendiri.

Sementara kita menutup, ini adalah tabel yang menggabungkan operasi rentetan yang kita pelajari:

Operasi Sintaks Contoh
Menampilkan Rentetan echo string echo Hello, World!
Menyimpan Rentetan set variable=string set message=Hello
Concatenasi set result=%string1% %string2% set fullName=%firstName% %lastName%
Input Pengguna set /p variable=prompt set /p name=What's your name?
Substring %variable:~start,length% %message:~0,5%
Penggantian %variable:old=new% %phrase:fox=cat%

Tetap mengoding, tetap belajar, dan terutama, bersenang-senang dengan skrip Batch!

Credits: Image by storyset