Đôi khi, bạn có thể muốn kiểm tra xem một chuỗi có chứa một từ hoặc chuỗi con cụ thể hay không. Điều này là do bạn có thể phải thực hiện một số thao tác trên chuỗi con hoặc từ đó. Một trong những cách dễ nhất để làm điều này là trong PHP là sử dụng hàm strpos[]. Chúng ta sẽ xem xét các cách khác để kiểm tra chuỗi con trong bài viết này
Hướng dẫn này sẽ giải thích
- Cách kiểm tra xem chuỗi có chứa chuỗi con không
- Tìm từ cụ thể trong chuỗi
Sử dụng hàm strrpos[] để kiểm tra xem chuỗi có chứa chuỗi con không
Phương thức strrpos[] được sử dụng để xác định vị trí xuất hiện cuối cùng của một chuỗi con hoặc từ trong một chuỗi. Vị trí chuỗi bắt đầu từ 0. Nếu không tìm thấy chuỗi, giá trị Boolean Sai được trả về
cú pháp
strrpos[string,find,start]
Phương thức nhận 2 tham số là chuỗi cần tìm và chuỗi con cần tìm. Tham số tùy chọn start cho biết nơi bắt đầu quá trình tìm kiếm
Thí dụ
đầu ra
Word Found at Position: 16
ví dụ 2
đầu ra
Word Found at Position: 16
Trong cả hai ví dụ trên, phương thức strpos[] nhận các tham số $mystring và $word. Điều kiện if kiểm tra xem chuỗi con có được tìm thấy hay không. Câu lệnh echo in ra vị trí của chuỗi.
Sử dụng preg_match để tìm kiếm chuỗi chứa chuỗi con
Phương thức preg_match[] là một đối sánh biểu thức chính quy giúp tìm một chuỗi
cú pháp
preg_match[pattern, input]
Các tham số chính là mẫu là biểu thức để tìm kiếm. Tham số đầu vào là chuỗi tìm kiếm diễn ra.
đầu ra
Word Found
Nếu bạn xem xét hiệu suất, thì strpos[] nhanh hơn khoảng ba lần so với preg_match[]. Phương thức preg_match[] mất khoảng 1. 5 giây để hoàn thành một thao tác, trong khi strpos[] mất khoảng 0. 5 giây
Sử dụng chức năng preg_match không phân biệt chữ hoa chữ thường để tìm kiếm chuỗi chứa chuỗi con
Thí dụ
Chữ i ở cuối biểu thức chính quy được dùng để thay đổi biểu thức chính quy thành một biểu thức không phân biệt chữ hoa chữ thường
Sử dụng chức năng preg_match để tìm kiếm công việc cụ thể trong chuỗi
Khi bạn đang tìm kiếm một từ cụ thể chứ không phải một chuỗi con, bạn cần hiểu rằng chúng cũng có thể xuất hiện trong các từ khác. Ví dụ,
- "are" ở đầu "khu vực"
- "are" ở giữa "giá vé"
Một cách để giảm thiểu điều này là sử dụng biểu thức chính quy kết hợp với ranh giới từ [\b]
Thí dụ
Ví dụ trên sẽ tìm kiếm từ “are”. Nó không phân biệt chữ hoa chữ thường
Phần kết luận
Nếu bạn muốn tìm chuỗi con như url ‘https. //www. stechies. com/photoshop/’ và bạn muốn tìm kiếm chuỗi con ‘stechies’ thì bạn nên tìm strpos[]
Nhưng nếu bạn muốn tìm kiếm một từ cụ thể trong chuỗi, chẳng hạn như “stechies” trong chuỗi 'hi stechies là trang web tốt nhất để hướng dẫn đào tạo' thì bạn nên truy cập preg_match với các biểu thức chính quy
Rất nhiều lần khi tôi làm việc với các chuỗi trong PHP, điều quan trọng là phải kiểm tra xem một chuỗi có chứa một chuỗi con khác không. PHP có rất nhiều hàm giúp bạn thao tác với chuỗi theo bất kỳ cách nào bạn muốn. Hôm nay chúng ta sẽ sử dụng một số hàm này để tìm hiểu cách kiểm tra xem một chuỗi có chứa một chuỗi con cụ thể hay không
Cách kiểm tra xem một chuỗi có chứa một chuỗi con khác trong PHP không
Monty Shokeen
26 Th02 2021
Cách cắt chuỗi trong PHP
Monty Shokeen
28 Thg 1 2021
Sử dụng các hàm mới trong PHP 8
Ba chức năng mới đã được thêm vào trong PHP 8 để giúp chúng tôi tìm hiểu xem một chuỗi có chứa một chuỗi con khác hay không. Xin lưu ý rằng tất cả các hàm này đều phân biệt chữ hoa chữ thường và việc kiểm tra sự tồn tại của một chuỗi con trống với chúng sẽ luôn trả về