re.regex
Anda dapat menentukan pencocokan ekspresi reguler di YARA-L 2.0 menggunakan salah satu sintaksis berikut:
Menggunakan sintaksis YARA-L — Terkait dengan peristiwa. Berikut adalah representasi generik dari sintaksis ini:
$e.field = /regex/Menggunakan sintaksis YARA-L — Sebagai fungsi yang menggunakan parameter berikut:
- Kolom tempat ekspresi reguler diterapkan.
- Regular expression yang ditentukan sebagai string.
Berikut adalah representasi generik dari sintaksis ini:
re.regex($e.field, `regex`)
Deskripsi
Fungsi ini menampilkan true jika string berisi substring yang cocok dengan ekspresi reguler yang diberikan. Tidak perlu menambahkan .* di awal atau di akhir ekspresi reguler.
Fungsi re.regex menggunakan mesin ekspresi reguler RE2.
Catatan
- Untuk mencocokkan string yang sama persis atau hanya awalan atau akhiran, sertakan karakter anchor
^(awal) dan$(akhir) dalam ekspresi reguler. Misalnya,/^full$/cocok dengan"full"secara persis, sedangkan/full/dapat cocok dengan"fullest","lawfull", dan"joyfully". - Jika kolom UDM menyertakan karakter baris baru,
regexphanya cocok dengan baris pertama kolom UDM. Untuk menerapkan pencocokan kolom UDM penuh, tambahkan(?s)ke ekspresi reguler. Misalnya, ganti/.*allUDM.*/dengan/(?s).*allUDM.*/. - Anda dapat menggunakan pengubah
nocasesetelah string untuk menunjukkan bahwa penelusuran harus mengabaikan kapitalisasi.
Jenis data parameter
STRING, STRING
Jenis ekspresi param
ANY, ANY
Jenis nilai yang ditampilkan
BOOL
Contoh kode
Contoh 1
// Equivalent to $e.principal.hostname = /google/
re.regex($e.principal.hostname, "google")