PHP kiểm tra xem chuỗi có chứa ký tự không

Việc kiểm tra xem một chuỗi có chứa một ký tự có thể được thực hiện dễ dàng bằng biểu thức chính quy hay bạn có thể sử dụng các hàm PHP tích hợp

Để kiểm tra xem một chuỗi có chứa ký tự của một trường hợp cụ thể hay không, bạn có thể sử dụng strpos

$haystack = 'This is my haystack that we shall check'
$has_A = strpos($haystack, 'A') !== false;
$has_a = strpos($haystack, 'a') !== false;

Và nếu bạn không quan tâm đến trường hợp của nhân vật, bạn có thể sử dụng stripos

$has_a = stripos($haystack, 'a') !== false;

Các hàm strpos trả về vị trí số của ký tự. Nếu nó không thể tìm thấy ký tự, nó sẽ trả về giá trị boolean false (do đó là ===)

Các hàm này cũng có thể hoạt động với các chuỗi có hai ký tự trở lên và không giới hạn chỉ một ký tự tại một thời điểm

Một chuỗi là một dãy các ký tự được sử dụng như một hằng hoặc biến theo nghĩa đen. Phần cụ thể của một chuỗi được gọi là một chuỗi con. Trong bài viết này, chúng ta sẽ xem các cách khác nhau để kiểm tra xem chuỗi có chứa chuỗi con hay không trong PHP

Làm cách nào để kiểm tra xem một chuỗi có chứa chuỗi con trong PHP không?

1) hàm strpos()

PHP cung cấp hàm strpos() để kiểm tra xem một chuỗi có chứa một chuỗi con cụ thể hay không. Hàm này có thể trả về vị trí xuất hiện đầu tiên của chuỗi con trong chuỗi. Nếu không thể tìm thấy một chuỗi con, thì nó sẽ trả về false

cú pháp

________số 8

Chức năng này có thể chấp nhận hai tham số. ________ chỉ định một văn bản khi thực hiện tìm kiếm và ________ 10 chỉ định một chuỗi con mà bạn phải tìm kiếm

ví dụ 1

1

2

3

4

5

6

7

8

9

10

 

$str1 = "Chào mừng bạn đến với Java2Blog";

$substr1 = "Java2Blog";

 

if(strpos($str1, $substr1) ! == false) {

    echo "true";

}

?>

 

đầu ra

thật

Giải thích mã

Chương trình trên cho giá trị true vì chuỗi chính

$has_a = stripos($haystack, 'a') !== false;
1 chứa chuỗi con
$has_a = stripos($haystack, 'a') !== false;
2. Do đó nó in ra true

ví dụ 2

1

2

3

4

5

6

7

8

9

10

11

12

 

$str = "Chào mừng bạn đến với Java2Blog";

$word = "Java2Blog";

 

if(strpos($str, $word) === 0) {

    tiếng vang "Từ ". $từ. " được tìm thấy ngay từ đầu";

} khác{

    tiếng vang "Từ ". $từ. "không tìm thấy ngay từ đầu";

}

?>

 

đầu ra

Từ Java2Blog không tìm thấy ở đầu

Giải thích mã

Chương trình trên đánh giá "Từ Java2Blog không được tìm thấy ở đầu" là đầu ra vì chuỗi chính $str chứa chuỗi con "Java2Blog" không ở đầu

2) hàm strstr()

Hàm

$has_a = stripos($haystack, 'a') !== false;
3 cũng là một hàm PHP để xem liệu chuỗi con, ký tự hoặc từ có thể tồn tại trong một chuỗi khác hay không. Hàm này trả về một phần của chuỗi đầu tiên bắt đầu từ và bao gồm lần xuất hiện đầu tiên của từ hoặc chuỗi con mà chúng tôi đang tìm kiếm cho đến cuối chuỗi đầu vào

Hàm này trả về false nếu chuỗi con không tồn tại trong chuỗi đầu vào, điều đó có nghĩa là chúng ta có thể kiểm tra xem một chuỗi có chứa chuỗi con hay không bằng cách tìm giá trị trả về của

$has_a = stripos($haystack, 'a') !== false;
3

cú pháp

$has_a = stripos($haystack, 'a') !== false;
5

Trong cú pháp trên, các tham số được mô tả như bên dưới

____16. Nó là một chuỗi đầu vào.
______80. Nếu kim không phải là một chuỗi, nó được chuyển thành một số nguyên và được sử dụng làm giá trị thứ tự của một ký tự.
______81. Nếu đúng, hàm strstr() có thể trả về một phần của đống cỏ khô trước khi kim xuất hiện lần đầu tiên (không bao gồm kim). Theo mặc định, nó là sai.

Ví dụ

1

2

3

4

5

6

7

8

9

10

 

$mainstring = "Chào mừng đến với PHP2Blog";

$substring = "Chào mừng";

 

if (strstr($mainstring, $substring) ! == false) {

  echo 'Chuỗi con "'. $substring. '" tồn tại trong một chuỗi nhất định. ';

}

?>

 

đầu ra

Chuỗi con “Welcome” tồn tại trong một chuỗi đã cho

3) hàm stristr()

Cả hai hàm int strpos( $string, $substring )2 và

$has_a = stripos($haystack, 'a') !== false;
3 đều được sử dụng để tìm ra lần xuất hiện đầu tiên của chuỗi, nhưng điểm khác biệt là hàm stristr() phân biệt chữ hoa chữ thường trong khi hàm strstr() phân biệt chữ hoa chữ thường

cú pháp

int strpos( $string, $substring )4

Trong cú pháp trên, các tham số được mô tả như bên dưới

____16. Nó là một chuỗi đầu vào.
______80. Nếu kim không phải là một chuỗi, nó được chuyển thành một số nguyên và được sử dụng làm giá trị thứ tự của một ký tự.
______81. Nếu đúng, hàm strstr() có thể trả về một phần của đống cỏ khô trước khi kim xuất hiện lần đầu tiên (không bao gồm kim). Theo mặc định, nó là sai.

ví dụ 1

1

2

3

4

5

6

7

8

9

10

11

12

 

$email_id = '[email được bảo vệ]';

$substring = "JAVA";

 

if (stristr($email_id, $substring) ! == false) {

  echo 'Chuỗi con "'. $substring. '" tồn tại trong một chuỗi nhất định. "'. $email_id. '". ';

}

?>

 

 

đầu ra

Chuỗi con “JAVA” tồn tại trong một chuỗi đã cho. ”[email được bảo vệ]”

ví dụ 2

Nếu chúng ta cần trả về một chuỗi trước

$has_a = stripos($haystack, 'a') !== false;
6, thì chúng ta nên viết mã như sau

1

2

3

4

5

6

7

8

 

$email_id = '[email được bảo vệ]';

$domain_name = stristr($email_id, 'N', TRUE);

 

echo $domain_name;

?>

 

đầu ra

thừa nhận

đọc thêm

Khai báo mảng rỗng trong PHP

Đọc thêm →

In mảng trong PHP

Đọc thêm →

4) hàm preg_match()

Hàm int strpos( $string, $substring )9 được sử dụng để triển khai đối sánh biểu thức chính quy. Hàm preg_match() có thể trả về một số kết quả khớp của một mẫu

Giá trị của nó là 0 lần nếu không có kết quả khớp nào xảy ra hoặc một lần vì nó ngừng tìm kiếm sau lần khớp đầu tiên. Hàm này có thể trả về false nếu xảy ra lỗi

Làm cách nào để kiểm tra xem chuỗi có đủ điều kiện trong PHP không?

Hàm is_string() kiểm tra xem biến có phải kiểu chuỗi hay không. Hàm này trả về true (1) nếu biến là kiểu chuỗi, ngược lại trả về false/nothing.

Làm cách nào để kiểm tra xem một chuỗi có bắt đầu bằng một từ cụ thể trong PHP không?

Hàm StartsWith() dùng để kiểm tra xem một chuỗi có bắt đầu bằng chuỗi đã cho hay không. Hàm này không phân biệt chữ hoa chữ thường và nó trả về giá trị boolean.