RegExMatch trong AutoHotkey v2 là hàm dùng để tìm kiếm chuỗi theo mẫu (Regular Expression – Regex).
Chức năng: Tìm một mẫu ký tự trong chuỗi
RegExMatch(Haystack, NeedleRegEx, &Match)| Thành phần | Ý nghĩa |
| ---------------- | ----------------- |
| Haystack | Chuỗi cần tìm |
| NeedleRegEx | Mẫu regex cần tìm |
| &Match | Biến nhận kết quả |
text := "Tuoi cua toi la 25"
RegExMatch(text, "\d+", &m)
MsgBox m[0]Kết quả: 25
Giải thích:
| Regex | Ý nghĩa |
| ----- | ------------ |
| `\d` | chữ số |
| `+` | 1 hoặc nhiều |
text := "Name: Thanh"
RegExMatch(text, "Name:\s*(\w+)", &m)
MsgBox m[1]Kết quả
Thanh
| Ký hiệu | Ý nghĩa |
| ------- | -------------------- |
| `\s` | khoảng trắng |
| `*` | 0 hoặc nhiều |
| `()` | nhóm dữ liệu cần lấy |
| `\w+` | chữ |
json := '{"count":2363,"name":"thanh","age":55}'
RegExMatch(json, '"name":"([^"]+)"', &m)
MsgBox m[1]Ý nghĩa
| Phần | Ý nghĩa |
| ---------- | ------------------- |
| `"name":"` | tìm chữ name |
| `(` | bắt đầu nhóm |
| `[^"]` | ký tự khác dấu `" ` |
| `+` | 1 hoặc nhiều |
| `)` | kết thúc nhóm |
| Biến | Giá trị |
| ------ | ------------------ |
| `m[0]` | toàn bộ chuỗi khớp |
| `m[1]` | nhóm thứ 1 |
| `m[2]` | nhóm thứ 2 |
Hướng dẫn RegExMatch tách chuỗi trong AutohotKey