Repository navigation
Expand file tree
/
Copy pathRegex_thuong_gap.htm
More file actions
80 lines (77 loc) · 37.1 KB
/
Copy pathRegex_thuong_gap.htm
File metadata and controls
80 lines (77 loc) · 37.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/e503160baa2cd0f0.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-457dc077475af9ee.js"/><script src="/_next/static/chunks/4bd1b696-3cf1b1127452a604.js" async=""></script><script src="/_next/static/chunks/517-6cbbb564b6b7a65d.js" async=""></script><script src="/_next/static/chunks/main-app-8eb68113308ecd14.js" async=""></script><script src="/_next/static/chunks/app/layout-40e71d42d3ccdee8.js" async=""></script><script src="/_next/static/chunks/839-150b5850706a66a5.js" async=""></script><script src="/_next/static/chunks/664-604679c007c3b6d5.js" async=""></script><script src="/_next/static/chunks/app/docs/%5Bid%5D/page-cdb6ed9e6ae8a094.js" async=""></script><meta name="next-size-adjust"/><title>Tài liệu HTML,CSS,JS - Một số regex thường gặp</title><meta name="description" content="### Regular Expressions trong JavaScript
#### 1. **Email**
Kiểm tra định dạng email hợp lệ:
```javascript
const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-..."/><meta property="og:title" content="Tài liệu HTML,CSS,JS - Một số regex thường gặp"/><meta property="og:description" content="### Regular Expressions trong JavaScript
#### 1. **Email**
Kiểm tra định dạng email hợp lệ:
```javascript
const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-..."/><meta property="og:image" content="https://study.sfit.com.vn/bgclb.jpg"/><meta property="og:image:alt" content="Tài liệu HTML,CSS,JS - Một số regex thường gặp"/><meta property="og:type" content="article"/><meta property="article:published_time" content="2024-12-10T08:57:16.303Z"/><meta property="article:author" content="zunohoang"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="Tài liệu HTML,CSS,JS - Một số regex thường gặp"/><meta name="twitter:description" content="### Regular Expressions trong JavaScript
#### 1. **Email**
Kiểm tra định dạng email hợp lệ:
```javascript
const emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-..."/><meta name="twitter:image" content="https://study.sfit.com.vn/bgclb.jpg"/><meta name="twitter:image:alt" content="Tài liệu HTML,CSS,JS - Một số regex thường gặp"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="__variable_1e4310 __variable_c3aa02 antialiased"><main class="container mx-auto px-4 pt-2 py-8"><header class="mb-3 border-b-[1px] py-5 border-gray-300 flex justify-between"><div><h1 class="text-3xl font-bold">Tài liệu HTML,CSS,JS - Một số regex thường gặp</h1><p class="text-gray-600">Đăng bởi <i>zunohoang</i> vào <time dateTime="2024-12-10T08:57:16.303Z">12/10/2024</time></p></div><p>👁️ <!-- -->12<!-- --> lượt xem</p></header><article><div class="markdown-body bg-white p-6 rounded-lg"><h3 class="text-xl font-bold mt-5 mb-3">Regular Expressions trong JavaScript</h3>
<h4>1. <strong>Email</strong></h4>
<p class="mb-4">Kiểm tra định dạng email hợp lệ:</p>
<pre><div style="color:#d4d4d4;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;padding:1em;margin:.5em 0;overflow:auto;background:#1e1e1e"><code class="language-javascript" style="white-space:pre;color:#9cdcfe;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none"><span class="token" style="color:#569CD6">const</span><span> emailRegex </span><span class="token" style="color:#d4d4d4">=</span><span> </span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token regex-source language-regex" style="color:#d16969">^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$</span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token" style="color:#d4d4d4">;</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>emailRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"example@gmail.com"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// true</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>emailRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"invalid-email"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// false</span></code></div></pre>
<h4>2. <strong>Số điện thoại</strong></h4>
<ul class="list-disc pl-6 mb-4">
<li class="mb-1">Số điện thoại Việt Nam:<!-- -->
<ul class="list-disc pl-6 mb-4">
<li class="mb-1">Bắt đầu bằng <code class="bg-gray-100 rounded px-1 py-0.5">0</code> hoặc <code class="bg-gray-100 rounded px-1 py-0.5">+84</code>, theo sau là đầu số từ <code class="bg-gray-100 rounded px-1 py-0.5">3-9</code> và 8 chữ số còn lại.</li>
</ul>
</li>
</ul>
<pre><div style="color:#d4d4d4;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;padding:1em;margin:.5em 0;overflow:auto;background:#1e1e1e"><code class="language-javascript" style="white-space:pre;color:#9cdcfe;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none"><span class="token" style="color:#569CD6">const</span><span> phoneRegexVN </span><span class="token" style="color:#d4d4d4">=</span><span> </span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token regex-source language-regex" style="color:#d16969">^(0|\+84)[3-9][0-9]{8}$</span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token" style="color:#d4d4d4">;</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>phoneRegexVN</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"0987654321"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// true</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>phoneRegexVN</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"+84987654321"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// true</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>phoneRegexVN</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"1234567890"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// false</span></code></div></pre>
<h4>3. <strong>Số nguyên</strong></h4>
<ul class="list-disc pl-6 mb-4">
<li class="mb-1">Hỗ trợ cả số nguyên dương và âm:</li>
</ul>
<pre><div style="color:#d4d4d4;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;padding:1em;margin:.5em 0;overflow:auto;background:#1e1e1e"><code class="language-javascript" style="white-space:pre;color:#9cdcfe;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none"><span class="token" style="color:#569CD6">const</span><span> integerRegex </span><span class="token" style="color:#d4d4d4">=</span><span> </span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token regex-source language-regex" style="color:#d16969">^-?\d+$</span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token" style="color:#d4d4d4">;</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>integerRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"123"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// true</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>integerRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"-123"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// true</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>integerRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"12.3"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// false</span></code></div></pre>
<h4>4. <strong>Số thực</strong></h4>
<ul class="list-disc pl-6 mb-4">
<li class="mb-1">Hỗ trợ cả số âm, số dương và dấu thập phân:</li>
</ul>
<pre><div style="color:#d4d4d4;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;padding:1em;margin:.5em 0;overflow:auto;background:#1e1e1e"><code class="language-javascript" style="white-space:pre;color:#9cdcfe;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none"><span class="token" style="color:#569CD6">const</span><span> floatRegex </span><span class="token" style="color:#d4d4d4">=</span><span> </span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token regex-source language-regex" style="color:#d16969">^-?\d+(\.\d+)?$</span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token" style="color:#d4d4d4">;</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>floatRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"123.45"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// true</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>floatRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"-123.45"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// true</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>floatRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"123"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// true</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>floatRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"123."</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// false</span></code></div></pre>
<p class="mb-4">Ngoài ra isNaN(value) trả về true nếu value không phải là số (thực - nguyên).</p>
<h4>5. <strong>Một số Regex khác</strong></h4>
<ul class="list-disc pl-6 mb-4">
<li class="mb-1"><strong>Xóa khoảng trắng ở đầu và cuối chuỗi</strong>:</li>
</ul>
<pre><div style="color:#d4d4d4;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;padding:1em;margin:.5em 0;overflow:auto;background:#1e1e1e"><code class="language-javascript" style="white-space:pre;color:#9cdcfe;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none"><span class="token" style="color:#569CD6">const</span><span> trimRegex </span><span class="token" style="color:#d4d4d4">=</span><span> </span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token regex-source language-regex" style="color:#d16969">^\s+|\s+$</span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token regex-flags" style="color:#d16969">g</span><span class="token" style="color:#d4d4d4">;</span><span>
</span><span></span><span class="token" style="color:#569CD6">const</span><span> str </span><span class="token" style="color:#d4d4d4">=</span><span> </span><span class="token" style="color:#ce9178">" Hello World! "</span><span class="token" style="color:#d4d4d4">;</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>str</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">replace</span><span class="token" style="color:#d4d4d4">(</span><span>trimRegex</span><span class="token" style="color:#d4d4d4">,</span><span> </span><span class="token" style="color:#ce9178">""</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// "Hello World!"</span></code></div></pre>
<ul class="list-disc pl-6 mb-4">
<li class="mb-1"><strong>Kiểm tra định dạng ngày (DD/MM/YYYY)</strong>:</li>
</ul>
<pre><div style="color:#d4d4d4;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;padding:1em;margin:.5em 0;overflow:auto;background:#1e1e1e"><code class="language-javascript" style="white-space:pre;color:#9cdcfe;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none"><span class="token" style="color:#569CD6">const</span><span> dateRegex </span><span class="token" style="color:#d4d4d4">=</span><span> </span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token regex-source language-regex" style="color:#d16969">^(0[1-9]|[12][0-9]|3[01])\/(0[1-9]|1[0-2])\/\d{4}$</span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token" style="color:#d4d4d4">;</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>dateRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"25/12/2024"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// true</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>dateRegex</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">test</span><span class="token" style="color:#d4d4d4">(</span><span class="token" style="color:#ce9178">"31/02/2024"</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// false</span></code></div></pre>
<ul class="list-disc pl-6 mb-4">
<li class="mb-1"><strong>Tách các từ trong chuỗi</strong>:</li>
</ul>
<pre><div style="color:#d4d4d4;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none;padding:1em;margin:.5em 0;overflow:auto;background:#1e1e1e"><code class="language-javascript" style="white-space:pre;color:#9cdcfe;font-size:13px;text-shadow:none;font-family:Menlo, Monaco, Consolas, "Andale Mono", "Ubuntu Mono", "Courier New", monospace;direction:ltr;text-align:left;word-spacing:normal;word-break:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none"><span class="token" style="color:#569CD6">const</span><span> wordRegex </span><span class="token" style="color:#d4d4d4">=</span><span> </span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token regex-source language-regex" style="color:#d16969">\b\w+\b</span><span class="token regex-delimiter" style="color:#d16969">/</span><span class="token regex-flags" style="color:#d16969">g</span><span class="token" style="color:#d4d4d4">;</span><span>
</span><span></span><span class="token" style="color:#569CD6">const</span><span> sentence </span><span class="token" style="color:#d4d4d4">=</span><span> </span><span class="token" style="color:#ce9178">"Regex is amazing!"</span><span class="token" style="color:#d4d4d4">;</span><span>
</span><span></span><span class="token" style="color:#4ec9b0">console</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">log</span><span class="token" style="color:#d4d4d4">(</span><span>sentence</span><span class="token" style="color:#d4d4d4">.</span><span class="token method property-access" style="color:#dcdcaa">match</span><span class="token" style="color:#d4d4d4">(</span><span>wordRegex</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">)</span><span class="token" style="color:#d4d4d4">;</span><span> </span><span class="token" style="color:#6a9955">// ["Regex", "is", "amazing"]</span></code></div></pre>
<h3 class="text-xl font-bold mt-5 mb-3">Ghi chú</h3>
<ul class="list-disc pl-6 mb-4">
<li class="mb-1"><strong>Regex Flags</strong>:<!-- -->
<ul class="list-disc pl-6 mb-4">
<li class="mb-1"><code class="bg-gray-100 rounded px-1 py-0.5">g</code>: Toàn cục (global).</li>
<li class="mb-1"><code class="bg-gray-100 rounded px-1 py-0.5">i</code>: Không phân biệt chữ hoa chữ thường.</li>
<li class="mb-1"><code class="bg-gray-100 rounded px-1 py-0.5">m</code>: Dòng mới (multiline).</li>
</ul>
</li>
</ul></div></article><footer class="mt-8 border-t pt-4"><p class="text-center text-gray-500">© 2024 SFIT | <a target="_blank" rel="noopener noreferrer" href="https://github.com/zunohoang">zunohoang</a>. All rights reserved.</p></footer></main><!--$--><!--/$--><script src="/_next/static/chunks/webpack-457dc077475af9ee.js" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"4:\"$Sreact.fragment\"\n5:I[15244,[],\"\"]\n6:I[43866,[],\"\"]\n7:I[96641,[\"177\",\"static/chunks/app/layout-40e71d42d3ccdee8.js\"],\"Analytics\"]\n9:I[86213,[],\"OutletBoundary\"]\nb:I[86213,[],\"MetadataBoundary\"]\nd:I[86213,[],\"ViewportBoundary\"]\nf:I[34835,[],\"\"]\n1:HL[\"/_next/static/media/4473ecc91f70f139-s.p.woff\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff\"}]\n2:HL[\"/_next/static/media/463dafcda517f24f-s.p.woff\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff\"}]\n3:HL[\"/_next/static/css/e503160baa2cd0f0.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"wpuafLjPzZSt3xkV7rnb4\",\"p\":\"\",\"c\":[\"\",\"docs\",\"6758026ce4d98632f4ae9c64\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"docs\",{\"children\":[[\"id\",\"6758026ce4d98632f4ae9c64\",\"d\"],{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$4\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/e503160baa2cd0f0.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[null,[\"$\",\"body\",null,{\"className\":\"__variable_1e4310 __variable_c3aa02 antialiased\",\"children\":[[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":\"404\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],\"notFoundStyles\":[]}],[\"$\",\"$L7\",null,{}]]}]]}]]}],{\"children\":[\"docs\",[\"$\",\"$4\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"docs\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]]}],{\"children\":[[\"id\",\"6758026ce4d98632f4ae9c64\",\"d\"],[\"$\",\"$4\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"docs\",\"children\",\"$0:f:0:1:2:children:2:children:0\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L6\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$4\",\"c\",{\"children\":[\"$L8\",null,[\"$\",\"$L9\",null,{\"children\":\"$La\"}]]}],{},null]},null]},null]},null],[\"$\",\"$4\",\"h\",{\"children\":[null,[\"$\",\"$4\",\"fgvPHH3uRX59MAikWyor6\",{\"children\":[[\"$\",\"$Lb\",null,{\"children\":\"$Lc\"}],[\"$\",\"$Ld\",null,{\"children\":\"$Le\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\"}]]}]]}]]],\"m\":\"$undefined\",\"G\":[\"$f\",\"$undefined\"],\"s\":false,\"S\":false}\n"])</script><script>self.__next_f.push([1,"e:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"c:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"1\",{\"children\":\"Tài liệu HTML,CSS,JS - Một số regex thường gặp\"}],[\"$\",\"meta\",\"2\",{\"name\":\"description\",\"content\":\"### Regular Expressions trong JavaScript\\n\\n#### 1. **Email**\\nKiểm tra định dạng email hợp lệ: \\n```javascript\\nconst emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-...\"}],[\"$\",\"meta\",\"3\",{\"property\":\"og:title\",\"content\":\"Tài liệu HTML,CSS,JS - Một số regex thường gặp\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:description\",\"content\":\"### Regular Expressions trong JavaScript\\n\\n#### 1. **Email**\\nKiểm tra định dạng email hợp lệ: \\n```javascript\\nconst emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-...\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:image\",\"content\":\"https://study.sfit.com.vn/bgclb.jpg\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:image:alt\",\"content\":\"Tài liệu HTML,CSS,JS - Một số regex thường gặp\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:type\",\"content\":\"article\"}],[\"$\",\"meta\",\"8\",{\"property\":\"article:published_time\",\"content\":\"2024-12-10T08:57:16.303Z\"}],[\"$\",\"meta\",\"9\",{\"property\":\"article:author\",\"content\":\"zunohoang\"}],[\"$\",\"meta\",\"10\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"11\",{\"name\":\"twitter:title\",\"content\":\"Tài liệu HTML,CSS,JS - Một số regex thường gặp\"}],[\"$\",\"meta\",\"12\",{\"name\":\"twitter:description\",\"content\":\"### Regular Expressions trong JavaScript\\n\\n#### 1. **Email**\\nKiểm tra định dạng email hợp lệ: \\n```javascript\\nconst emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-...\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:image\",\"content\":\"https://study.sfit.com.vn/bgclb.jpg\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:image:alt\",\"content\":\"Tài liệu HTML,CSS,JS - Một số regex thường gặp\"}]]\na:null\n"])</script><script>self.__next_f.push([1,"10:I[48073,[\"839\",\"static/chunks/839-150b5850706a66a5.js\",\"664\",\"static/chunks/664-604679c007c3b6d5.js\",\"642\",\"static/chunks/app/docs/%5Bid%5D/page-cdb6ed9e6ae8a094.js\"],\"default\"]\n12:I[44839,[\"839\",\"static/chunks/839-150b5850706a66a5.js\",\"664\",\"static/chunks/664-604679c007c3b6d5.js\",\"642\",\"static/chunks/app/docs/%5Bid%5D/page-cdb6ed9e6ae8a094.js\"],\"\"]\n11:T8cd,"])</script><script>self.__next_f.push([1,"### Regular Expressions trong JavaScript\n\n#### 1. **Email**\nKiểm tra định dạng email hợp lệ: \n```javascript\nconst emailRegex = /^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$/;\nconsole.log(emailRegex.test(\"example@gmail.com\")); // true\nconsole.log(emailRegex.test(\"invalid-email\")); // false\n```\n\n#### 2. **Số điện thoại**\n- Số điện thoại Việt Nam:\n - Bắt đầu bằng `0` hoặc `+84`, theo sau là đầu số từ `3-9` và 8 chữ số còn lại.\n```javascript\nconst phoneRegexVN = /^(0|\\+84)[3-9][0-9]{8}$/;\nconsole.log(phoneRegexVN.test(\"0987654321\")); // true\nconsole.log(phoneRegexVN.test(\"+84987654321\")); // true\nconsole.log(phoneRegexVN.test(\"1234567890\")); // false\n```\n\n#### 3. **Số nguyên**\n- Hỗ trợ cả số nguyên dương và âm:\n```javascript\nconst integerRegex = /^-?\\d+$/;\nconsole.log(integerRegex.test(\"123\")); // true\nconsole.log(integerRegex.test(\"-123\")); // true\nconsole.log(integerRegex.test(\"12.3\")); // false\n```\n\n#### 4. **Số thực**\n- Hỗ trợ cả số âm, số dương và dấu thập phân:\n```javascript\nconst floatRegex = /^-?\\d+(\\.\\d+)?$/;\nconsole.log(floatRegex.test(\"123.45\")); // true\nconsole.log(floatRegex.test(\"-123.45\")); // true\nconsole.log(floatRegex.test(\"123\")); // true\nconsole.log(floatRegex.test(\"123.\")); // false\n```\nNgoài ra isNaN(value) trả về true nếu value không phải là số (thực - nguyên).\n\n#### 5. **Một số Regex khác**\n- **Xóa khoảng trắng ở đầu và cuối chuỗi**: \n```javascript\nconst trimRegex = /^\\s+|\\s+$/g;\nconst str = \" Hello World! \";\nconsole.log(str.replace(trimRegex, \"\")); // \"Hello World!\"\n```\n\n- **Kiểm tra định dạng ngày (DD/MM/YYYY)**: \n```javascript\nconst dateRegex = /^(0[1-9]|[12][0-9]|3[01])\\/(0[1-9]|1[0-2])\\/\\d{4}$/;\nconsole.log(dateRegex.test(\"25/12/2024\")); // true\nconsole.log(dateRegex.test(\"31/02/2024\")); // false\n```\n\n- **Tách các từ trong chuỗi**: \n```javascript\nconst wordRegex = /\\b\\w+\\b/g;\nconst sentence = \"Regex is amazing!\";\nconsole.log(sentence.match(wordRegex)); // [\"Regex\", \"is\", \"amazing\"]\n```\n\n### Ghi chú\n- **Regex Flags**:\n - `g`: Toàn cục (global).\n - `i`: Không phân biệt chữ hoa chữ thường.\n - `m`: Dòng mới (multiline). "])</script><script>self.__next_f.push([1,"8:[\"$\",\"main\",null,{\"className\":\"container mx-auto px-4 pt-2 py-8\",\"children\":[[\"$\",\"header\",null,{\"className\":\"mb-3 border-b-[1px] py-5 border-gray-300 flex justify-between\",\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"h1\",null,{\"className\":\"text-3xl font-bold\",\"children\":\"Tài liệu HTML,CSS,JS - Một số regex thường gặp\"}],[\"$\",\"p\",null,{\"className\":\"text-gray-600\",\"children\":[\"Đăng bởi \",[\"$\",\"i\",null,{\"children\":\"zunohoang\"}],\" vào \",[\"$\",\"time\",null,{\"dateTime\":\"2024-12-10T08:57:16.303Z\",\"children\":\"12/10/2024\"}]]}]]}],[\"$\",\"p\",null,{\"children\":[\"👁️ \",12,\" lượt xem\"]}]]}],[\"$\",\"article\",null,{\"children\":[\"$\",\"$L10\",null,{\"content\":\"$11\"}]}],[\"$\",\"footer\",null,{\"className\":\"mt-8 border-t pt-4\",\"children\":[\"$\",\"p\",null,{\"className\":\"text-center text-gray-500\",\"children\":[\"© 2024 SFIT | \",[\"$\",\"$L12\",null,{\"href\":\"https://github.com/zunohoang\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"children\":\"zunohoang\"}],\". All rights reserved.\"]}]}]]}]\n"])</script></body></html>