Bản tóm tắt. trong hướng dẫn này, bạn sẽ tìm hiểu về hàm PHP
0 để khớp với biểu thức chính quyCode language: PHP [php]
Array [ [0] => 8 ]
Giới thiệu về hàm PHP preg_match[]
0 tìm chuỗi khớp với biểu thức chính quy. HàmCode language: PHP [php]
Array [ [0] => 8 ]
0 ngừng tìm kiếm miễn là nó tìm thấy kết quả khớp đầu tiênCode language: PHP [php]
Array [ [0] => 8 ]
Đây là cú pháp của hàm
0Code language: PHP [php]
Array [ [0] => 8 ]
Code language: PHP [php]
preg_match[ string $pattern, string $subject, array &$matches = null, int $flags = 0, int $offset = 0 ]: int|false
Hàm
0 chấp nhận các tham số sauCode language: PHP [php]
Array [ [0] => 8 ]
5 một chuỗi chỉ định một mẫu để tìm kiếm
Code language: PHP [php]Array [ [0] => 8 ]
6 là một chuỗi đầu vào
Code language: PHP [php]Array [ [0] => 8 ]
7 là một mảng lưu trữ kết quả tìm kiếm. Mảng
Code language: PHP [php]Array [ [0] => 8 ]
7 là tùy chọn. Nếu có sự trùng khớp,
Code language: PHP [php]Array [ [0] => 8 ]
9 sẽ chứa văn bản khớp với toàn bộ mẫu,
Code language: PHP [php]Array [ [0] => 8 ]
10 sẽ chứa văn bản khớp với nhóm chụp đầu tiên, v.v.
Code language: PHP [php]Array [ [0] => 8 ]
11 là sự kết hợp của các cờ sau.
Code language: PHP [php]Array [ [0] => 8 ]
12 và
Code language: PHP [php]Array [ [0] => 8 ]
13. Thông tin thêm về các cờ này trong ví dụ bên dưới
Code language: PHP [php]Array [ [0] => 8 ]
14 là vị trí mà hàm sẽ bắt đầu tìm kiếm. Theo mặc định,
Code language: PHP [php]Array [ [0] => 8 ]
0 bắt đầu tìm kiếm từ đầu chuỗi. Lưu ý rằng
Code language: PHP [php]Array [ [0] => 8 ]
14 tính bằng byte
Code language: PHP [php]Array [ [0] => 8 ]
Hàm
0 trả vềCode language: PHP [php]
Array [ [0] => 8 ]
18 nếu tìm thấy khớp,Code language: PHP [php]
Array [ [0] => 8 ]
19 nếu không, hoặcCode language: PHP [php]
Array [ [0] => 8 ]
10 nếu không khớpCode language: PHP [php]
Array [ [0] => 8 ]
Các ví dụ về hàm preg_match[] trong PHP
Hãy lấy một số ví dụ về cách sử dụng hàm
0
Array [ [0] => 8 ]
Code language: PHP [php]
1] Sử dụng PHP preg_match[] để so khớp một số
Ví dụ sau sử dụng
0 để khớp với một số có một hoặc nhiều chữ số bằng cách sử dụng lớp ký tựCode language: PHP [php]
Array [ [0] => 8 ]
13Code language: PHP [php]
Array [ [0] => 8 ]
5Code language: PHP [php]
Array [ [0] => 8 ]
đầu ra
Code language: PHP [php]
Array [ [0] => 8 ]
Lưu ý rằng
0 ngừng tìm kiếm ngay khi tìm thấy kết quả khớp. Trong ví dụ này, 1995 cũng khớp với mẫuCode language: PHP [php]
Array [ [0] => 8 ]
13. Tuy nhiên,Code language: PHP [php]
Array [ [0] => 8 ]
0 đã tìm thấy kết quả khớp với số 8Code language: PHP [php]
Array [ [0] => 8 ]
Để tìm tất cả các kết quả khớp, bạn cần sử dụng hàm
17Code language: PHP [php]
Array [ [0] => 8 ]
2] Sử dụng PHP preg_match[] để khớp một ký tự Word
Ví dụ sau sử dụng hàm
0 để khớp một hoặc nhiều ký tự từCode language: PHP [php]
Array [ [0] => 8 ]
1Code language: PHP [php]
Array [ [0] => 8 ]
đầu ra
1Code language: PHP [php]
Array [ [0] => 8 ]
3] Sử dụng PHP preg_match[] với ví dụ về nhóm chụp
Ví dụ sau đây sử dụng hàm
0 để khớp với một số bắt đầu bằngCode language: PHP [php]
Array [ [0] => 8 ]
50 và theo sau chính xác là hai chữ số. Mẫu này cũng có một nhóm chụp để chụp hai chữ số cuốiCode language: PHP [php]
Array [ [0] => 8 ]
5Code language: PHP [php]
Array [ [0] => 8 ]
đầu ra
7Code language: PHP [php]
Array [ [0] => 8 ]
Mảng
7 chứa hai phần tử. Phần tử đầu tiên chứa văn bản khớp với toàn bộ mẫu, trong khi phần tử thứ hai chứa nhóm chụp đầu tiênCode language: PHP [php]
Array [ [0] => 8 ]
52Code language: PHP [php]
Array [ [0] => 8 ]
Ví dụ sau sử dụng cùng một mẫu với nhóm chụp có tên bổ sung
0Code language: PHP [php]
preg_match[ string $pattern, string $subject, array &$matches = null, int $flags = 0, int $offset = 0 ]: int|false
đầu ra
1Code language: PHP [php]
preg_match[ string $pattern, string $subject, array &$matches = null, int $flags = 0, int $offset = 0 ]: int|false
4] Sử dụng hàm PHP preg_match[] với cờ PREG_OFFSET_CAPTURE
Đôi khi, bạn muốn tìm một trận đấu trong một chuỗi và vị trí bắt đầu của trận đấu. Để làm điều đó, bạn sử dụng cờ
12. Ví dụCode language: PHP [php]
Array [ [0] => 8 ]
3Code language: PHP [php]
preg_match[ string $pattern, string $subject, array &$matches = null, int $flags = 0, int $offset = 0 ]: int|false
đầu ra
50Code language: PHP [php]
Array [ [0] => 8 ]
Trong ví dụ này, mẫu
54 khớp với bất kỳ văn bản nào có ba chữ cái viết hoa. Vì chúng tôi sử dụng cờCode language: PHP [php]
Array [ [0] => 8 ]
12, nên nó trả về giá trị khớp [PHP] và vị trí bắt đầu [hoặc phần bù] của văn bản PHP trong chuỗiCode language: PHP [php]
Array [ [0] => 8 ]
5] Sử dụng hàm preg_match[] với cờ PREG_UNMATCHED_AS_NULL
Theo mặc định, hàm
0 trả về một chuỗi trống cho nhóm chụp chưa khớp [hoặc mẫu con]Code language: PHP [php]
Array [ [0] => 8 ]
Thay vào đó, nếu bạn muốn hàm
0 trả về null, bạn có thể sử dụng cờCode language: PHP [php]
Array [ [0] => 8 ]
13Code language: PHP [php]
Array [ [0] => 8 ]
Ví dụ sau sử dụng hàm
0 không có cờCode language: PHP [php]
Array [ [0] => 8 ]
13Code language: PHP [php]
Array [ [0] => 8 ]
51Code language: PHP [php]
Array [ [0] => 8 ]
đầu ra
52Code language: PHP [php]
Array [ [0] => 8 ]
Trong ví dụ này, chuỗi có văn bản khớp với các mẫu con
71Code language: PHP [php]
Array [ [0] => 8 ]
Tuy nhiên, trong ví dụ sau, chuỗi không có văn bản khớp với mẫu con
53Code language: PHP [php]
Array [ [0] => 8 ]
đầu ra
54
Array [ [0] => 8 ]
Code language: PHP [php]
Chuỗi không có bất kỳ văn bản nào khớp với mẫu con
72,Code language: PHP [php]
Array [ [0] => 8 ]
0 trả về một chuỗi trốngCode language: PHP [php]
Array [ [0] => 8 ]
Vì chúng ta sử dụng cờ
13, thay vào đó, hàmCode language: PHP [php]
Array [ [0] => 8 ]
0 trả về null cho mẫu con chưa khớpCode language: PHP [php]
Array [ [0] => 8 ]
Ví dụ sau sử dụng cờ
13. Vì vậy, nó trả vềCode language: PHP [php]
Array [ [0] => 8 ]
77 thay vì một chuỗi trống cho mẫu con chưa khớpCode language: PHP [php]
Array [ [0] => 8 ]
55Code language: PHP [php]
Array [ [0] => 8 ]
đầu ra
56Code language: PHP [php]
Array [ [0] => 8 ]
6] Sử dụng php preg_match[] với tham số offset
Giả sử rằng bạn có chuỗi sau
57Code language: PHP [php]
Array [ [0] => 8 ]
Nếu bạn sử dụng
13, nó sẽ khớp với số đầu tiên, là 1Code language: PHP [php]
Array [ [0] => 8 ]
Tuy nhiên, nếu bạn chuyển một tham số offset xác định vị trí bắt đầu tìm kiếm, thì nó sẽ khớp với số thứ hai
79Code language: PHP [php]
Array [ [0] => 8 ]
58Code language: PHP [php]
Array [ [0] => 8 ]
đầu ra
59Code language: PHP [php]
Array [ [0] => 8 ]
Trong ví dụ này, hàm
0 bắt đầu tìm kiếm các kết quả khớp từ vị trí mười thay vì 0Code language: PHP [php]
Array [ [0] => 8 ]
Lưu ý rằng mẫu có thể chứa các xác nhận như
01,Code language: PHP [php]
preg_match[ string $pattern, string $subject, array &$matches = null, int $flags = 0, int $offset = 0 ]: int|false
02 hoặcCode language: PHP [php]
preg_match[ string $pattern, string $subject, array &$matches = null, int $flags = 0, int $offset = 0 ]: int|false
03. Do đó, phần bù không tương đương với việc chuyển chuỗi con tới hàmCode language: PHP [php]
preg_match[ string $pattern, string $subject, array &$matches = null, int $flags = 0, int $offset = 0 ]: int|false
0Code language: PHP [php]
Array [ [0] => 8 ]