XtGem Forum catalog

CuDemVN.Wap.Sh

- GetSmile.Mobie.In - Diễn đàn chia sẻ Cú đêm Việt Nam
- AiChat.Wap.Sh - Diễn đàn Xtgem Việt Nam
- HamTruyen.Xtgem.Com - Blog Ham Truyện nơi hội tụ của những tín đồ mê truyện chữ
* Trang chủ >> WapMaster
Tìm Kiếm Thảo Luận
↓↓

Cấu trúc, Ý nghĩa của các ký tự và Cách modify biểu thức so mẫu RegExp

Admin* RoSino18k *
* 18-03-2016

Biểu thức so mẫu (pattern / Regular Expression) dùng để mô tả 1 cách tổng quát 1 đối tượng (chuỗi) trong PHP, ví dụ:

preg_replace('/[^a-z0-9]+/i','',$str);

hàm này loại bỏ tất cả các ký tự không phải là chữ (a-z và A-Z) hoặc số (0-9) ra khỏi chuỗi $str Biểu thức so mẫu dùng rất hiệu quả và nhanh chóng, tuy nhiên theo TG biết thì cũng không nhiều người biết sử dụng cái này (nhất là ở nơi không có trường lớp đào tạo cơ bản về PHP như VN chúng ta) còn số người biết, hiểu rõ thì không training lại nên đã ít nay càng ít người biết sử dụng biểu thức so mẫu. Trong bài này TG chỉ giới thiệu 1 số kiến thức cơ bản và 1 vài ví dụ để dễ hiểu, hy vọng là giúp ích cho anh em.


Cấu trúc:
như ví dụ trên thì /[^a-z0-9]+/ ilà 1 biểu thức so mẫu:
Giới hạn trong cặp dấu /<so mẫu>/x hoặc #<so mẫu>#x
- x có thể là 1 hoặc nhiều ký tự để mô tả dữ liệu được lấy và cũng có thể không có trong biểu thức so mẫu.
- Một số giá trị có thể có của x:
+ i: không phân biệt chữ hoa, chữ thường
+ s: bao gồm cả các ký tự xuống dòng
+ Ngoài còn có 1 số giá trị khác như: S, U,... nhưng ít được sử dụng

Ta lấy ví dụ cho dễ hình dung:
preg_replace('/[^a-z0-9]/','','phpBASIC$');
-> php
preg_replace('/[^a-z0-9]/i','','phpBASIC$');
-> phpBASIC

Ý nghĩa của các ký tự trong biểu thức so mẫu:
\ //loại bỏ các ký tự đặc biệt của pattern
/(phpbasic)/ //chuỗi phpbasic
/\(phpbasic\)/ //chuỗi (phpbasic)

^ //ký tự bắt đầu
/^php(.*)/ //những chuỗi bắt đầu bằng chữ php

$ //ký tự kết thúc
/(.*)basic$/ //những chuỗi kết thúc bằng chữ basic

. //bất kỳ ký tự nào trừ ký tự xuông dòng
/(.*)/ //tất cả các ký tự nằm trên 1 dòng

[ and ] //bắt đầu và kết thúc 1 lớp ký tự
/[a-z]/ //tất cả các ký tự a-z
//chú ý trong 1 lớp:
^ //phủ định:
/[^a-z]/ //những ký tự không phải là a-z
- //1 khoảng:
/[a-d]/ //bao gồm a, b, c, d

| //hoặc
/a|b/ //ký tự a hoặc b

( and ) //bắt đầu và kết thúc 1 so mẫu con
/^a(c|d)b/ //chuỗi có dạng acb hoặc adb

? //có hoặc không
/ab?c/ //chuỗi có dạng abc hoặc ac

* //0 hoặc nhiều hơn ký tự
/a*/ : //<null>, a, aa, aaa,........

+ //có ít nhất 1
/a+/ : //a,aa,aaa,..........

{ and } //bắt đầu và kết thúc min/max ký tự
/a{1,3}/ //a,aa,aaa

Các ký tự đặc biệt khác:
\n or \r //ký tự xuống dòng
\t //ký tự tab
\d //bất kỳ ký tự số nào
\D //bất kỳ ký tự nào mà không phải là số
\s //bất kỳ ký tự khoảng trắng
\S //bất kỳ ký không phải là khoảng trắng
\w //bất kỳ từ nào
\W //không phải là từ

Nguồn: PHPBasic
↑↑ Lượt xem: 409
score
Đánh giá: 4.5/ 5, 409 bình chọn
- Chia sẻ:G  T
BBCode:

Link:
+ Còn “nhiều” Lắm!
+

Share code Diễn đàn trên Xtgem Full chức năng cực chất GetSmile.Mobie.In bởi Cú Đêm Việt Nam

+

Share code PHP hiển thị thông tin khách đang online trên Site

+

Sử dụng HTML và CSS tạo hiệu ứng hiển thị mô tả khi di chuột vào hình ảnh

+

Ajax là gì? Hướng dẫn code cơ bản khi xử lý dữ liệu với jQuery Ajax

+

Share full code PHP bộ tool cài đặt và quản lý Filelist KhoTruyen365 Xtgem

Trang chủ Cú Đêm Việt Nam Trang Chủ[1-1-409]