【日本語-正規表現】 Sổ tay regular expression

Trong lập trình, biểu thức chính qui thường dùng để validate form input, nhưng chúng ta sẽ quên nó nếu không ghi lại chúng vào đâu đó. Sau đây là một số biểu thức chính qui hay dùng, gồm cả code javascript demo

1. Chứa ít nhất một kí tự số halfsize - 半角数字が含まれる
var objRegex = RegExp(/\d+/);
if(objRegex.test(strInput)){
    console.log('VALID!!!');
} else {
    console.log('INVALID!!!');
}

Chuỗi số bất kỳ (Số nguyên, số thực)

var objRegex = RegExp(/^[-]?[0-9]+[.]?[0-9]*$/);
if(objRegex.test(strInput)){
    console.log('VALID!!!');
} else {
    console.log('INVALID!!!');
}

2. Chỉ chứa kí tự số halfsize - 半角数字のみ
var objRegex = RegExp(/^\d+$/);
if(objRegex.test(strInput)){
    console.log('VALID!!!');
} else {
    console.log('INVALID!!!');
}

3. Chứa ít nhất 1 kí tự chữ cái tiếng anh halfsize - 英字が含まれる
var objRegex = RegExp(/[a-zA-Z]/);
if(objRegex.test(strInput )){
    console.log('VALID!!!');
} else {
    console.log('INVALID!!!');
}

4. Chỉ chứa kí tự chữ cái tiếng anh halfsize - 英字のみ
var objRegex = RegExp(/^[a-zA-Z]+$/);
if(objRegex.test(strInput )){
    console.log('VALID!!!');
} else {
    console.log('INVALID!!!');
}

5. Chỉ chứa các kí tự fullsize - 全角のみ
var objRegex = RegExp(/^[^ -~。-゚]+$/);
if(objRegex.test(strInput )){
    console.log('VALID!!!');
} else {
    console.log('INVALID!!!');
}

# data test case
# 1. Case VALID
#     var strInput = 'ガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポヴ!”#$%&’()*+,−./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[¥]^_‘abcdefghijklmnopqrstuvwxyz{|}〜 。「」、・ヲァィゥェォャュョッーアイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワン゛゜';

# 2. Case INVALID
#     var strInput = 'ガギグゲゴザジAズゼゾダヂヅデドバビブベボパピプペポヴ';
6. Chỉ chứa các kí tự halfsize - 半角のみ
# Kiểm tra nếu input không chứa bất kỳ kí tự nào fullsize 
#  thì nó chứa toàn halfsize
var objRegex = RegExp(/[^ -~。-゚]/);
if(!objRegex.test(strInput )){
    console.log('VALID!!!');
} else {
    console.log('INVALID!!!');
}

# data test case
# 1. Case VALID
#     var strInput = 'アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォッャュョーガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポヴ';

# 2. Case INVALID
#     var strInput = 'アイウエオカキクケコサシスセソタチツテトナニ/ヌネノハヒフヘホマミムメモヤユヨラリルレロワヲ';
7. Chỉ chứa các kí tự Katakana(fullsize + halfsize) - カタカナのみ
var objRegex = RegExp(/^[\u30a0-\u30ff\uff65-\uff9f]*$/);
if(objRegex.test(strInput )){
    console.log('VALID!!!');
} else {
    console.log('INVALID!!!');
}

# data test case
# 1. Case VALID
#     var strInput = 'アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォッャュョーガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポヴ';

# 2. Case INVALID
#     var strInput = 'アイウエオカキクケコサシスセソタチツテトナニ/ヌネノハヒフヘホマミムメモヤユヨラリルレロワヲ';
8. Chỉ chứa các kí tự Katakana halfsize - 半角カタカナのみ
var objRegex = RegExp(/^[\uff65-\uff9f]*$/);
if(objRegex.test(strInput )){
    console.log('VALID!!!');
} else {
    console.log('INVALID!!!');
}

# data test case
# 1. Case VALID
#     var strInput = 'アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォッャュョーガギグゲゴザジズゼゾダヂヅデドバビブベボパピプペポヴ';

# 2. Case INVALID
#     var strInput = 'アイウエオカキクケコサシスセソタチツテトナニ/ヌネノハヒフヘホマミムメモヤユヨラリルレロワヲ';
9. Chỉ chứa các kí tự ASCII - ASCII文字のみ
var objRegex = RegExp(/^[\u0020-\u007e]+$/);
if(objRegex.test(strInput )){
    console.log('VALID!!!');
} else {
    console.log('INVALID!!!');
}

# Các kí tự ASCII bao gồm các kí tự và kí hiệu chữ và số halfsize. 
#   Còn các kí tự tiếng nhật và các kí tự và số fullsize không phải là kí tự ASCII

Hết/.

Chúc các bạn thành công!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Blog at WordPress.com.

Up ↑

%d bloggers like this: