Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> MATLAB

MATLAB - String

Membuat string karakter cukup sederhana di MATLAB. Bahkan, kami telah menggunakannya berkali-kali. Misalnya, Anda mengetik berikut ini di command prompt

Demo Langsung
my_string = 'Tutorials Point'

MATLAB akan mengeksekusi pernyataan di atas dan mengembalikan hasil berikut

my_string = Tutorials Point

MATLAB menganggap semua variabel sebagai array, dan string dianggap sebagai array karakter. Mari kita gunakan siapa perintah untuk memeriksa variabel yang dibuat di atas

whos

MATLAB akan mengeksekusi pernyataan di atas dan mengembalikan hasil berikut

Name           Size            Bytes  Class    Attributes
my_string      1x16               32  char

Menariknya, Anda dapat menggunakan fungsi konversi numerik seperti uint8 atau uint16 untuk mengonversi karakter dalam string ke kode numeriknya. char fungsi mengubah vektor bilangan bulat kembali ke karakter

Contoh

Buat file skrip dan ketik kode berikut ke dalamnya

Demo Langsung
my_string = 'Tutorial''s Point';
str_ascii = uint8(my_string)        % 8-bit ascii values
str_back_to_char= char(str_ascii)  
str_16bit = uint16(my_string)       % 16-bit ascii values
str_back_to_char = char(str_16bit)  

Saat Anda menjalankan file, ini akan menampilkan hasil berikut

str_ascii =

   84  117  116  111  114  105   97  108   39  115   32   80  111  105  110  116

str_back_to_char = Tutorial's Point
str_16bit =

   84  117  116  111  114  105   97  108   39  115   32   80  111  105  110  116

str_back_to_char = Tutorial's Point

Array Karakter Persegi Panjang

String yang telah kita bahas sejauh ini adalah array karakter satu dimensi; namun, kita perlu menyimpan lebih dari itu. Kita perlu menyimpan lebih banyak data tekstual dimensi dalam program kita. Hal ini dicapai dengan membuat array karakter persegi panjang.

Cara paling sederhana untuk membuat larik karakter persegi panjang adalah dengan menggabungkan dua atau lebih larik karakter satu dimensi, baik secara vertikal maupun horizontal sesuai kebutuhan.

Anda dapat menggabungkan string secara vertikal dengan salah satu cara berikut −

Contoh

Buat file skrip dan ketik kode berikut ke dalamnya

Demo Langsung
doc_profile = ['Zara Ali                             '; ...
               'Sr. Surgeon                          '; ...
               'R N Tagore Cardiology Research Center']
doc_profile = char('Zara Ali', 'Sr. Surgeon', ...
                  'RN Tagore Cardiology Research Center')

Saat Anda menjalankan file, ini akan menampilkan hasil berikut

doc_profile =
Zara Ali                             
Sr. Surgeon                          
R N Tagore Cardiology Research Center
doc_profile =
Zara Ali                            
Sr. Surgeon                         
RN Tagore Cardiology Research Center

Anda dapat menggabungkan string secara horizontal dengan salah satu cara berikut −

Contoh

Buat file skrip dan ketik kode berikut ke dalamnya

Demo Langsung
name =     'Zara Ali                             ';
position = 'Sr. Surgeon                          '; 
worksAt =  'R N Tagore Cardiology Research Center';
profile = [name ', ' position ', ' worksAt]
profile = strcat(name, ', ', position, ', ', worksAt)

Saat Anda menjalankan file, ini akan menampilkan hasil berikut

profile = Zara Ali      , Sr. Surgeon      , R N Tagore Cardiology Research Center
profile = Zara Ali,Sr. Surgeon,R N Tagore Cardiology Research Center

Menggabungkan String menjadi Array Sel

Dari diskusi kita sebelumnya, jelas bahwa menggabungkan string dengan panjang yang berbeda bisa menjadi masalah karena semua string dalam array harus memiliki panjang yang sama. Kami telah menggunakan spasi kosong di akhir string untuk menyamakan panjangnya.

Namun, cara yang lebih efisien untuk menggabungkan string adalah dengan mengubah array yang dihasilkan menjadi array sel.

Array sel MATLAB dapat menampung berbagai ukuran dan tipe data dalam sebuah array. Array sel menyediakan cara yang lebih fleksibel untuk menyimpan string dengan panjang yang bervariasi.

cellstr fungsi mengubah array karakter menjadi array sel string.

Contoh

Buat file skrip dan ketik kode berikut ke dalamnya

Demo Langsung
name =     'Zara Ali                             ';
position = 'Sr. Surgeon                          '; 
worksAt =  'R N Tagore Cardiology Research Center';
profile = char(name, position, worksAt);
profile = cellstr(profile);
disp(profile)

Saat Anda menjalankan file, ini akan menampilkan hasil berikut

{                                                                               
   [1,1] = Zara Ali                                                              
   [2,1] = Sr. Surgeon                                                           
   [3,1] = R N Tagore Cardiology Research Center                                 
}   

Fungsi String di MATLAB

MATLAB menyediakan banyak fungsi string untuk membuat, menggabungkan, mengurai, membandingkan, dan memanipulasi string.

Tabel berikut memberikan deskripsi singkat tentang fungsi string di MATLAB

Fungsi Tujuan
Fungsi untuk menyimpan teks dalam array karakter, menggabungkan array karakter, dll.
kosong Buat string karakter kosong
cellstr Buat array sel string dari array karakter
char Konversi ke array karakter (string)
iscellstr Tentukan apakah input adalah array sel dari string
ischar Tentukan apakah item adalah array karakter
sprintf Memformat data menjadi string
strcat Menggabungkan string secara horizontal
strjoin Gabungkan string dalam array sel menjadi string tunggal
Fungsi untuk mengidentifikasi bagian string, menemukan dan mengganti substring
ischar Tentukan apakah item adalah array karakter
pulau kecil Elemen array yang merupakan huruf alfabet
isspace Elemen array yang merupakan karakter spasi
isstrprop Tentukan apakah string termasuk dalam kategori tertentu
sscanf Membaca data yang diformat dari string
strfind Temukan satu string di dalam string lain
strrep Cari dan ganti substring
strsplit Pisahkan string pada pembatas yang ditentukan
strtok Bagian string yang dipilih
validasi string Periksa validitas string teks
symvar Menentukan variabel simbolis dalam ekspresi
regexp Mencocokkan ekspresi reguler (peka huruf besar/kecil)
regexpi Mencocokkan ekspresi reguler (tidak peka huruf besar/kecil)
regexprep Ganti string menggunakan ekspresi reguler
regexptranslate Terjemahkan string menjadi ekspresi reguler
Fungsi untuk perbandingan string
strcmp Bandingkan string (peka huruf besar/kecil)
strcmpi Bandingkan string (tidak peka huruf besar/kecil)
strncmp Bandingkan n karakter pertama dari string (peka huruf besar/kecil)
strncmpi Bandingkan n karakter pertama dari string (tidak peka huruf besar/kecil)
Fungsi untuk mengubah string menjadi huruf besar atau kecil, membuat atau menghapus spasi
deblank Strip trailing blanks dari akhir string
strtrim Hapus spasi awal dan akhir dari string
bawah Mengubah string menjadi huruf kecil
atas Mengubah string menjadi huruf besar
strjust Membenarkan susunan karakter

Contoh

Contoh berikut mengilustrasikan beberapa fungsi string yang disebutkan di atas −

Memformat String

Buat file skrip dan ketik kode berikut ke dalamnya

Demo Langsung
A = pi*1000*ones(1,5);
sprintf(' %f \n %.2f \n %+.2f \n %12.2f \n %012.2f \n', A)

Saat Anda menjalankan file, ini akan menampilkan hasil berikut

ans =  3141.592654 
   3141.59 
   +3141.59 
      3141.59 
   000003141.59 

Menggabungkan String

Buat file skrip dan ketik kode berikut ke dalamnya

Demo Langsung
%cell array of strings
str_array = {'red','blue','green', 'yellow', 'orange'};

% Join strings in cell array into single string
str1 = strjoin(str_array, "-")
str2 = strjoin(str_array, ",")

Saat Anda menjalankan file, ini akan menampilkan hasil berikut

str1 = red-blue-green-yellow-orange
str2 = red,blue,green,yellow,orange

Menemukan dan Mengganti String

Buat file skrip dan ketik kode berikut ke dalamnya

Demo Langsung
students = {'Zara Ali', 'Neha Bhatnagar', ...
            'Monica Malik', 'Madhu Gautam', ...
            'Madhu Sharma', 'Bhawna Sharma',...
            'Nuha Ali', 'Reva Dutta', ...
            'Sunaina Ali', 'Sofia Kabir'};
 
% The strrep function searches and replaces sub-string.
new_student = strrep(students(8), 'Reva', 'Poulomi')
% Display first names
first_names = strtok(students)

Saat Anda menjalankan file, ini akan menampilkan hasil berikut

new_student = 
{
   [1,1] = Poulomi Dutta
}
first_names = 
{
   [1,1] = Zara
   [1,2] = Neha
   [1,3] = Monica
   [1,4] = Madhu
   [1,5] = Madhu
   [1,6] = Bhawna
   [1,7] = Nuha
   [1,8] = Reva
   [1,9] = Sunaina
   [1,10] = Sofia
}

Membandingkan String

Buat file skrip dan ketik kode berikut ke dalamnya

Demo Langsung
str1 = 'This is test'
str2 = 'This is text'
if (strcmp(str1, str2))
   sprintf('%s and %s are equal', str1, str2)
else
   sprintf('%s and %s are not equal', str1, str2)
end

Saat Anda menjalankan file, ini akan menampilkan hasil berikut

str1 = This is test
str2 = This is text
ans = This is test and This is text are not equal

MATLAB

  1. String Jawa
  2. MATLAB - Ikhtisar
  3. MATLAB - Variabel
  4. MATLAB - Perintah
  5. MATLAB - Tipe Data
  6. MATLAB - Operator
  7. MATLAB - Matriks
  8. MATLAB - Array
  9. MATLAB - Notasi Titik Dua
  10. MATLAB - Angka