Bài viết đăng tại: https://laptrinhcanban.com
Hướng dẫn cách tìm kiếm chuỗi trong PHP. Bạn sẽ học được cách tìm chuỗi trong chuỗi PHP bằng các hàm có sẵn sau bài học này.
Chúng ta có 3 phương pháp để tìm kiếm chuỗi trong PHP như sau:
- Tìm chuỗi con xuất hiện đầu tiên từ đầu chuỗi PHP (hàm strpos )
- Tìm chuỗi trong chuỗi trong PHP từ vị trí bất kỳ bằng hàm strpos
- Tìm vị trí xuất hiện thứ n của chuỗi con trong chuỗi PHP
Tìm kiếm chuỗi trong PHP bằng hàm strpos
Chúng ta sử dụng hàm strpos trong PHP để tìm vị trí xuất hiện đầu tiên của chuỗi con trong chuỗi PHP, tính từ đầu chuỗi với cú pháp sau đây:
strpos ($str, $sub );
Trong đó $sub
là chuỗi con cần tìm trong chuỗi $str
.
Kết quả trả về sẽ là index của vị trí xuất hiện đầu tiên của $sub
, tính từ đầu chuỗi $str
. Và nếu như $sub
không tồn tại trong $str
thì hàm strpos trong PHP sẽ trả về giá trị false.
Sau đây hãy cùng xem các ví dụ cụ thể sử dụng hàm strpos() để tìm chuỗi trong chuỗi PHP như sau:
Ví dụ 1:
$mystring = 'abcd'; |
Trong ví dụ này, chuỗi con bc
xuất hiện ở vị trí index bằng 1, nên index đó được trả về.
Ví dụ 2:
echo strpos("Good School", "oo"); |
ở ví dụ này, có 2 chuỗi con oo
trong chuỗi ban đầu, tuy nhiên lần xuất hiện đầu tiên tính từ đầu chuỗi Good School
của nó là tại vị trí có index là 1, do đó hàm strpos trong PHP sẽ trả về kết quả là 1
mà thôi.
Tìm chuỗi trong chuỗi trong PHP từ vị trí bất kỳ bằng hàm strpos
Cúng bằng cách sử dụng hàm strpos() với cú pháp nâng cao, chúng ta có thể chỉ định vị trí bắt đầu tìm chuỗi con trong chuỗi PHP.
Cú pháp sử dụng sẽ là:
strpos ($str, $sub, $start );
Trong đó $sub
là chuỗi con cần tìm trong chuỗi $str
, và $start
là index của vị trí bắt đầu tìm chuỗi con trong chuỗi nguồn.
Ví dụ
echo strpos("Good School", "oo", 3); |
Trong ví dụ này, vị trí tìm kiếm ký tự bắt đầu từ index bằng 3 (từ chữ d) nên kết quả, vị trí của chuỗi con oo
thứ 2 đã được trả về.
Tìm vị trí xuất hiện thứ n của chuỗi con trong chuỗi PHP
Trong PHP không tồn tại phương pháp trực tiếp nào để giúp chúng ta tìm vị trí xuất hiện thứ n của chuỗi con trong chuỗi PHP. Do đó chúng ta cần phải tự viết phương pháp riêng để giải quyết bài toán này.
Ý tưởng ở đây là dùng vòng lặp để cắt lần lượt các chuỗi con có độ dài bằng với chuỗi cần tìm, rồi so sánh với chuỗi cần tìm cho đến khi tìm thấy lần xuất hiện thứ n của chuỗi đó trong chuỗi nguồn.
Chúng ta có thể tạo một hàm như thể để sử dụng trong chương trình như sau:
function findString( $str, $sub,$n) { |
Trong đó các tham số sử dụng trong hàm là
str
: chuỗi nguồnsub
: chuỗi con cần tìmn
: vị trí thứ n cần tìm của chuỗisub
trong chuỗistr
ban đầu.
Ví dụ, chúng ta gọi hàm trên để tìm vị trí xuất hiện thứ n của chuỗi con oo
trong chuỗi Good School
như sau:
echo findString("Good School", "oo", 1); |
Trong hàm có sử dụng tới phương thức substr cắt chuỗi con từ chuỗi ban đầu.
- Xem thêm Cắt chuỗi trong PHP
Tổng kết
Trên đây Kiyoshi đã hướng dẫn bạn các cách tìm kiếm chuỗi trong PHP rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.
Và hãy cùng tìm hiểu những kiến thức sâu hơn về PHP trong các bài học tiếp theo.
URL Link
https://laptrinhcanban.com/php/nhap-mon-lap-trinh-php/chuoi-trong-php/tim-kiem-chuoi-trong-php/
HOME › hướng dẫn học lập trình php cho người mới bắt đầu>>07. chuỗi trong php