Hàm Preg_Match Trong Php

      34

XIn kính chào các bạn, bài viết này mình đã lại viết tiếp nhà nhằm Regular Expression , nếu khách hàng như thế nào chưa rõ nó là vật gì thì mời các bạn xem thêm bài xích này của chính bản thân mình nhé. Hôm ni mình đã giới thiệu mang đến chúng ta một số hàm được áp dụng cùng với Regular Expression trong PHPhường cùng một số những ngôi trường vừa lòng mà lại họ đề xuất Regex.

Bạn đang xem: Hàm preg_match trong php

quý khách hàng vẫn xem: Hàm preg_match vào php


*

Một số hàm thực hiện Regex vào PHP

Tại trong PHPhường họ tất cả tổng số 9 PCRE hàm để sử dụng

preg_filter - thực hiện tìm kiếm tìm phần lớn tác dụng theo biểu thức chính quy với cụ thếpreg_grep - trả về mảng những kết quả cơ mà match với patternpreg_last_error - trả về lỗi code của lần thực hiện regex PCRE cuối cùngpreg_match && preg_match_all - triển khai khớp cùng với biểu thức thiết yếu quy, sự khác biệt tẹo nữa phần dưới mình đã nói rõ rộng nhépreg_quote - đặt dấu gach chéo cánh ngược trước từng ký trường đoản cú là cam kết tự quan trọng đặc biệt vào biểu thức chính quy vào chuỗi đầu vàopreg_replace - tiến hành tìm tìm đầy đủ thành phần làm sao nhưng khớp cùng với biểu thức chính quy cùng thay thế nó với chuỗi nhưng mà ta nên.preg_replace_callbaông xã - xúc tiến tìm tìm phần đông thành phần làm sao mà khớp với biểu thức thiết yếu quy với thay thế nó cùng với chuỗi nhưng mà ta cần và tiếp đến kết quả vẫn dùng để thực hiện 1 hàm callback không giống. Kết trái sau cùng trả về là input đầu vào sau khi vẫn replace với trải qua hàm callbaông chồng đó.preg_split - phân chia chuỗi bởi biểu thức thiết yếu quy

Và theo kinh nghiệm làm việc của bản thân ý thì tuyệt sử dụng tốt nhất là 3 hàm preg_match, preg_match_all với preg_replace.

preg_match

Hàm này dùng làm bình chọn xem dữ liệu đầu vào có khớp với chuỗi biểu thức bao gồm quy hay là không với trả hiệu quả.

Xem thêm: Mã Vùng 0873 Là Mã Vùng Nào Hay Chưa? Đầu Số 087 Là Mạng Gì

Cú pháp

preg_match($pattern, $subject, $match, $flags, $offset)Trong đó:

$pattern là chuối Regex$subject là chuỗi phải so khớp$match là tác dụng trả về, được truyền vào dưới dạng tsi chiếu ( hoàn toàn có thể bỏ trống nếu như không cần dùng)$flags là tđê mê số chỉ ra rằng địa điểm cắt chuỗi so khớp ( có thể quăng quật trống) mang định $flag = 0$offmix là tham mê số chỉ ra vị trí ban đầu của bài toán match ( rất có thể quăng quật trống) mặc định $offset = 0

Mình bao gồm ví dụ dễ dàng và đơn giản như sau

2 tmê mệt số truyền vào

$testString = "hello honey";$kiểm tra = preg_match("/hello/", $testString);if ($check) emang đến "Khớp chuỗi"; else emang đến "Chuỗi ko khớp";//Kết quả: Khớp chuỗi3 tsay mê số truyền vàoCũng như ví dụ trên nhưng tmê mẩn số đồ vật 3 như sau

$testString = "hello honey";$match$kiểm tra = preg_match("/hello/", $testString, $matches);if ($check) eđến ""; print_r($matches); emang đến ""; else echo "Chuỗi không khớp";//Kết quả: Array( => hello,)4 tham số truyền vào

Cũng là ví dụ trên nhưng lại lần này bản thân sẽ trả về địa điểm so khớp chuỗi bằng cách truyền thêm tđam mê số máy 4

$testString = "hello honey hello";$match$check = preg_match("/hello/", $testString, $matches, PREG_OFFSET_CAPTURE);if ($check) echo ""; print_r($matches); emang lại ""; else emang đến "Chuỗi không khớp";//Kết quả: Array( => Array( => hello => 0 ) => Array( => hello => 12 ))Ở đây 0 và 12 chính là vị trí bước đầu chuỗi khớp cùng với pattern

5 tham số truyền vàoCũng là ví dụ ở bên trên nhưng mà chúng ta đang truyền tyêu thích số máy 5 vào nhé

preg_match_all

preg_match_all($pattern, $subject, $match, $flags, $offset)Trong đó:

$pattern là chuối Regex$subject là chuỗi đề xuất so khớp$match là kết quả trả về, được truyền vào bên dưới dạng tsi mê chiếu ( hoàn toàn có thể bỏ trống còn nếu như không đề xuất dùng)$flags là tsi mê số chỉ ra địa chỉ giảm chuỗi so khớp ( rất có thể quăng quật trống) mang định $flag = 0$offphối là tmê man số đã cho thấy địa điểm bước đầu của vấn đề match ( có thể vứt trống) mặc định $offset = 0Mình bao gồm ví dụ đơn giản và dễ dàng nlỗi sau:

$web1_userinfo = "Name: John Poul Title: PHP. Guru"; preg_match("/(.*)/U", $web1_userinfo, $pat_array); eđến ""; print_r($pat_array); emang đến "";?>// Kết quảArray( => John Poul => John Poul)Nếu ta dùng preg_match_all thì hiệu quả nlỗi sau

Array( => Array ( => John Poul => PHPhường Guru ) => Array ( => John Poul => PHPhường. Guru ))Sự khác nhau thân hàm preg_match_all() và preg_match() chính là preg_match_all() thì nó vẫn match tất cả những đoạn khớp trong chuỗi, còn hàm preg_match() nó vẫn chỉ match cùng với cái trước tiên cơ mà nó chạm mặt , còn các đoạn tiếp sau nó sẽ không match nữa.

preg_replace

preg_replace($pattern, $stringReplacement, $subject, $limit, $count)$pattern là biểu thức thiết yếu quy mà lại các bạn muốn match$stringReplacement là chuỗi sửa chữa mang lại tác dụng search được$subject là chuỗi nhưng mà chúng ta yêu cầu tìm kiếm với cố thế$limit là giới hạn chu kỳ thay thế chuỗi , mang định $limit = -1 là không giới hạn ( hoàn toàn có thể quăng quật trống )$count là số lần thay thế chuỗi lúc sử dụng hàm, được áp dụng dưới dạng tđắm say chiếu ( rất có thể quăng quật trống )Ví dụ

$age = "He was 24 years old"; $updateAge = preg_replace("(+)", "30", $age); print $updateAge;?>//Ket qua He was 30 years oldMột số những ví dụ

Validate Email

function validateEmail($email){ $pattern ="/^()+()*Chuim mục: Lỗi Kỹ Thuật