Skip to main content

Giới thiệu vể biểu thức quy tắc (Regular Expression)

1. Khái niệm:
Một biểu thức quy tắc là một mẫu để mô tả một chuỗi các ký tự chia sẻ chung mẫu đó.
Ví dụ: một mẫu mô tả email (lưu ý mẫu ví dụ ở đây không được định nghĩa theo biểu thức quy tắc):
                                        string + @ + string + '.' + string
          Các chuỗi ứng với mẫu này:
                                        jbohn@gmail.com
                                        java@hotmail.com
                                        bohn@oracle.net
                                        .....
2. Cú pháp mô tả một biểu thức quy tắc (mẫu)
Một số các phần tử thay thế được sử dụng để mô tả một biể thức quy tắc:
. Bất kỳ ký tự nào.
? Không (0) hoặc một (1) của ký tự đứng trước.
* Không (0) hoặc lớn hơn của ký tự đứng trước.
+ Một (1) hoặc lớn hơn của ký tự đứng trước.
[] Một dải các ký tự hay chữ số. Ví dụ: [0-9], [a-z]
^ Không phải cái tiếp sau (tức là, "không phải <cái gì đó>").
\d Bất kỳ số nào (tùy chọn, [0-9]).
\D Bất kỳ cái gì không là số (tùy chọn, [^0-9]).
\s Bất kỳ khoảng trống nào (tùy chọn, [ \n\t\f\r]).
\S Không có bất kỳ khoảng trống nào (tùy chọn, [^ \n\t\f\r]).
\w Bất kỳ từ nào (tùy chọn, [a-zA-Z_0-9]).
\W Không có bất kỳ từ nào (tùy chọn, [^\w]).
Một số phần tử đầu tiên ở đây được gọi là các lượng tử ((quantifiers), bởi vì chúng xác định số lượng cái đứng trước chúng. Các cấu kiện như là \d là các lớp ký tự được định nghĩa trước. Bất kỳ ký tự nào mà không có ý nghĩa đặc biệt trong một mẫu sẽ là một trực kiện và chỉ khớp với chính nó.

Ví dụ:
Giả sử có chuỗi ký tự sau:
Here is a WikiWord followed by AnotherWikiWord, then YetAnotherWikiWord.

Bạn có thể tìm kiếm các từ wiki trong chuỗi này với mẫu biểu thức chính quy như sau:
[A-Z][a-z]*([A-Z][a-z]*)+
 
 
                              http://jbohn.blogspot.com 

Comments

Popular posts from this blog

How to Install SQL Server on MacOS with docker

 I'm writing a small tut for who need to install SQL Server on macOS using docker Step 1: Download the SQL Server Image sudo docker pull mcr.microsoft.com/mssql/server:2019-latest Step 2: Launch the SQL Server Image in Docker docker run -d --name example_sql_server -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=Pass.word-123' -p 1433:1433 mcr.microsoft.com/mssql/server:2019-latest Step 3: Check the SQL Server Docker Container docker ps -a Step 4: Install SQL Server Command-Line Tool sudo npm install -g sql-cli Step 5: Connect to SQL Server  5.1 Using Command mssql -u sa -p Pass.word-123 5.2: Using VSCode to connect to sql server Using the extension SQL Server (mssql)

Create Grid using React native

After fist post about react native I feel I'm getting familiar with react native, this framework quite easy to use, today I continue with another tutorial about create a simple grid card in react native. Let see the our final result first:                             Let's start... Analytics Assump our data has below structure: We have an array of rows and each row has an array of columns, then I decided to use FlatList to display object in cloumns array in horizontal direction, you can imaging like below image. Gridcard design Card Item each card has a logo and a text. I'm using the Icon from lib react-native-vector-icons To have a flatlist in horizontal we use  horizontal = {true} property, and to make sure the width of flatlist is same as screen with we use  contentContainerStyle={{ flexGrow: 1, justifyContent: 'center' }} Grid Now the implementation quite easy now, just need to...