{"id":3960,"date":"2024-06-17T16:42:11","date_gmt":"2024-06-17T09:42:11","guid":{"rendered":"https:\/\/www.marketenterprise.vn\/blog\/?p=3960"},"modified":"2024-07-23T10:27:26","modified_gmt":"2024-07-23T03:27:26","slug":"literal-characters","status":"publish","type":"post","link":"https:\/\/www.marketenterprise.vn\/blog\/literal-characters.html","title":{"rendered":"Literal Characters, Special Characters trong 1 regex pattern"},"content":{"rendered":"<p><span style=\"font-weight: 400;\">Trong b\u00e0i vi\u1ebft tr\u01b0\u1edbc, m\u00ecnh \u0111\u00e3 gi\u1edbi thi\u1ec7u s\u01a1 l\u01b0\u1ee3t v\u1ec1 <a href=\"https:\/\/www.marketenterprise.vn\/blog\/regex-hoat-dong-ra-sao.html\">c\u00e1ch Regex engine ho\u1ea1t \u0111\u1ed9ng<\/a>. \u1ede b\u00e0i vi\u1ebft n\u00e0y s\u1ebd ti\u1ebfp t\u1ee5c t\u00ecm hi\u1ec3u v\u1ec1 m\u1ed9t v\u00e0i \u0111\u1ecbnh ngh\u0129a c\u01a1 b\u1ea3n s\u1eed trong <\/span><span style=\"font-weight: 400;\"><strong>Regular Expression<\/strong> nh\u01b0 l\u00e0 <\/span><span style=\"font-weight: 400;\"><strong>Literal Characters<\/strong>, <strong>Special Characters<\/strong>, <strong>Character Classes<\/strong>.<\/span><\/p>\n<h2>1. Literal Characters<\/h2>\n<p><span style=\"font-weight: 400;\">Literal characters bao g\u1ed3m: <\/span><\/p>\n<ul>\n<li>\n<h3><span style=\"font-weight: 400;\">Ch\u1eef c\u00e1i (alphabet): <\/span><\/h3>\n<ul>\n<li><span style=\"font-weight: 400;\">Vi\u1ebft th\u01b0\u1eddng : a b c d e f g h i k l m n o p q r s t u v w x y z<\/span><\/li>\n<li><span><span style=\"font-weight: 400;\">Vi\u1ebft hoa: <\/span>A B C D E F G H I J K L M N O P Q R S T U V W X Y Z<\/span><\/li>\n<\/ul>\n<\/li>\n<li>\n<h3><span style=\"font-weight: 400;\">Ch\u1eef s\u1ed1: t\u1eeb 0 \u0111\u1ebfn 9.<\/span><\/h3>\n<\/li>\n<li>\n<h3><span style=\"font-weight: 400;\">C\u00e1c d\u1ea5u d\u00f9ng trong c\u00e2u (punctuation marks):\u00a0 , \u201c \u2018 ( ) { } \/ \\ ? ! . [ ] v\u00e2n v\u00e2n.<\/span><\/h3>\n<\/li>\n<li>\n<h3><span style=\"font-weight: 400;\">Kho\u1ea3ng tr\u1eafng (whitespace character).<\/span><\/h3>\n<\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">V\u1edbi nh\u1eefng chu\u1ed7i regex (regex pattern) \u0111\u01a1n gi\u1ea3n, c\u00f3 th\u1ec3 s\u1eed d\u1ee5ng Literal characters \u0111\u1ec3 t\u1ea1o ra m\u1ed9t regex pattern, nh\u01b0ng v\u1edbi c\u00e1c y\u00eau c\u1ea7u ph\u1ee9c t\u1ea1p h\u01a1n, h\u00e3y c\u00f9ng t\u00ecm hi\u1ec3u nh\u1eefng ph\u1ea7n ti\u1ebfp theo.<\/span><\/p>\n<h2>2. Special Characters<\/h2>\n<p><span style=\"font-weight: 400;\">C\u1ea7n ch\u00fa \u00fd khi s\u1eed d\u1ee5ng c\u00e1c Literal characters l\u00e0 c\u00e1c d\u1ea5u c\u00e2u (punctuation marks), v\u00ec c\u00f3 th\u1ec3 m\u1ed9t trong s\u1ed1 ch\u00fang l\u00e0 k\u00fd t\u1ef1 \u0111\u1eb7c bi\u1ec7t: . ^ $ * + ? [ | ( ) { \\ [. Nh\u1eefng k\u00fd t\u1ef1 \u0111\u1eb7c bi\u1ec7t n\u00e0y \u0111\u01b0\u1ee3c g\u1ecdi l\u00e0 metacharacters. Mu\u1ed1n s\u1eed d\u1ee5ng nh\u1eefng metacharacters n\u00e0y nh\u01b0 m\u1ed9t k\u00fd t\u1ef1 th\u00f4ng th\u01b0\u1eddng (Literal characters), ph\u1ea3i th\u00eam d\u1ea5u \\ (<\/span><span style=\"font-weight: 400;\">backslash) <\/span><span style=\"font-weight: 400;\">v\u00e0o tr\u01b0\u1edbc ch\u00fang.\u00a0<\/span><\/p>\n<figure id=\"attachment_3962\" aria-describedby=\"caption-attachment-3962\" style=\"width: 300px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2024\/04\/23185806\/regex-2024-04-23-at-18.57.26-300x217.png\" alt=\"Special Characters vs Literal Characters\" width=\"300\" height=\"217\" class=\"wp-image-3962 size-medium\" srcset=\"https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2024\/04\/23185806\/regex-2024-04-23-at-18.57.26-300x217.png 300w, https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2024\/04\/23185806\/regex-2024-04-23-at-18.57.26.png 675w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><figcaption id=\"caption-attachment-3962\" class=\"wp-caption-text\">H\u00ecnh 1: Special Characters vs Literal Characters<\/figcaption><\/figure>\n<ol>\n<li>\n<h6><code>.<\/code> &#8211; Dot (ch\u1ea5m)<\/h6>\n<\/li>\n<li>\n<h6><code>^<\/code> &#8211; Caret (m\u0169)<\/h6>\n<\/li>\n<li>\n<h6><code>$<\/code> &#8211; Dollar (\u0111\u00f4 la)<\/h6>\n<\/li>\n<li>\n<h6><code>*<\/code> &#8211; Asterisk (d\u1ea5u hoa th\u1ecb)<\/h6>\n<\/li>\n<li>\n<h6><code>+<\/code> &#8211; Plus (d\u1ea5u c\u1ed9ng)<\/h6>\n<\/li>\n<li>\n<h6><code>?<\/code> &#8211; Question mark (d\u1ea5u h\u1ecfi)<\/h6>\n<\/li>\n<li>\n<h6><code>[<\/code> &#8211; Square brackets (ngo\u1eb7c vu\u00f4ng)<\/h6>\n<\/li>\n<li>\n<h6><code>|<\/code> &#8211; Pipe (\u1ed1ng)<\/h6>\n<\/li>\n<li>\n<h6><code>(<\/code> &#8211; Parentheses (ngo\u1eb7c \u0111\u01a1n)<\/h6>\n<\/li>\n<li>\n<h6><code>)<\/code> &#8211; Parentheses (ngo\u1eb7c \u0111\u01a1n)<\/h6>\n<\/li>\n<li>\n<h6><code>{<\/code> &#8211; Curly braces (ngo\u1eb7c nh\u1ecdn)<\/h6>\n<\/li>\n<li>\n<h6><code>\\<\/code> &#8211; Backslash (d\u1ea5u g\u1ea1ch ch\u00e9o ng\u01b0\u1ee3c)<\/h6>\n<\/li>\n<\/ol>\n<p>Link tham kh\u1ea3o: <a href=\"https:\/\/www.regular-expressions.info\/characters.html#:~:text=differences%20in%20case.-,Special%20Characters,-Because%20we%20want\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">Special Characters<\/span><\/a><\/p>\n<p>Trong b\u00e0i n\u00e0y ch\u1ec9 kh\u00e1i qu\u00e1t, s\u01a1 l\u01b0\u1ee3t v\u1ec1 c\u00e1c k\u00fd t\u1ef1 \u0111\u1eb7c bi\u1ec7t n\u00e0y, m\u00ecnh s\u1ebd gi\u1ea3i th\u00edch chi ti\u1ebft ch\u1ee9c n\u0103ng c\u1ee7a t\u1eebng lo\u1ea1i trong nh\u1eefng b\u00e0i vi\u1ebft ti\u1ebfp theo.<\/p>\n<p><span style=\"font-weight: 400;\">Ex: Ta c\u00f3 m\u1ed9t regex pattern <\/span><span style=\"font-weight: 400; color: white; background-color: #999999;\">1+1=2<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Mu\u1ed1n so s\u00e1nh v\u1edbi <\/span><span style=\"font-weight: 400; color: white; background-color: #6d9eeb;\">1+1=2<\/span> <span style=\"font-weight: 400;\">th\u00ec ta ph\u1ea3i vi\u1ebft regex pattern l\u00e0 <\/span><span style=\"font-weight: 400; color: white; background-color: #999999;\">1\\+1=2<\/span> <span style=\"font-weight: 400;\">v\u00ec d\u1ea5u c\u1ed9ng (+) l\u00e0 m\u1ed9t trong nh\u1eefng k\u00fd t\u1ef1 \u0111\u1eb7c bi\u1ec7t.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">B\u1ea1n c\u00f3 th\u1ec3 ki\u1ec3m tra t\u1ea1i link sau: <\/span><a href=\"https:\/\/regex101.com\/r\/rFU0zS\/1\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">https:\/\/regex101.com\/r\/rFU0zS\/1<\/span><\/a><\/p>\n<h2>3. Character Classes<\/h2>\n<p><span style=\"font-weight: 400;\">Ex 1: C\u1ea7n t\u00ecm ki\u1ebfm m\u1ed9t ch\u1eef c\u00e1i th\u01b0\u1eddng trong chu\u1ed7i <\/span><span style=\"font-weight: 400; color: white; background-color: #6d9eeb;\">a123456<\/span><span style=\"font-weight: 400;\">.<\/span><span style=\"font-weight: 400;\"> L\u00fac n\u00e0y regex pattern c\u1ee7a ch\u00fang ta s\u1ebd nh\u01b0 sau: <\/span><span style=\"font-weight: 400; color: white; background-color: #999999;\">a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|v|z<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u00f3 ph\u1ea3i l\u00e0 chu\u1ed7i regex qu\u00e1 d\u00e0i kh\u00f4ng? \u0110\u1ec3 ng\u1eafn g\u1ecdn ta vi\u1ebft ng\u1eafn g\u1ecdn l\u00e0 [a-z]. [a-z] l\u00e0 m\u1ed9t Character Class.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Link ch\u1ea1y th\u1eed regex <\/span><a href=\"https:\/\/regex101.com\/r\/TVGZ4P\/1\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">https:\/\/regex101.com\/r\/TVGZ4P\/1<\/span><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Character Classes hay c\u00f2n g\u1ecdi l\u00e0 \u201ccharacter set\u201d. \u0110\u1ea1i di\u1ec7n cho c\u00e1c nh\u00f3m k\u00fd t\u1ef1 c\u00f3 t\u00ednh ch\u1ea5t chung nh\u01b0 ch\u1eef c\u00e1i, ch\u1eef s\u1ed1, d\u1ea5u c\u00e2u, ho\u1eb7c c\u00e1c k\u00fd t\u1ef1 \u0111\u1eb7c bi\u1ec7t.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">D\u01b0\u1edbi \u0111\u00e2y l\u00e0 m\u1ed9t s\u1ed1 c\u00fa ph\u00e1p ph\u1ed5 bi\u1ebfn c\u1ee7a c\u00e1c &#8220;Character Sets&#8221;:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">[abc]: Kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 k\u00fd t\u1ef1 n\u00e0o trong t\u1eadp h\u1ee3p {a, b, c}.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">[a-z]: Kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 k\u00fd t\u1ef1 n\u00e0o t\u1eeb &#8220;a&#8221; \u0111\u1ebfn &#8220;z&#8221;.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">[A-Z]: Kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 k\u00fd t\u1ef1 n\u00e0o t\u1eeb &#8220;A&#8221; \u0111\u1ebfn &#8220;Z&#8221;.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">[0-9]: Kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 ch\u1eef s\u1ed1 n\u00e0o t\u1eeb 0 \u0111\u1ebfn 9.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">[a-zA-Z]: Kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 ch\u1eef c\u00e1i n\u00e0o (c\u1ea3 ch\u1eef c\u00e1i vi\u1ebft hoa v\u00e0 vi\u1ebft th\u01b0\u1eddng).<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">[a-zA-Z0-9]: Kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 ch\u1eef c\u00e1i ho\u1eb7c ch\u1eef s\u1ed1 n\u00e0o.<\/span><\/li>\n<\/ul>\n<p>Ex 2: <span style=\"font-weight: 400;\">C\u1ea7n t\u00ecm ki\u1ebfm m\u1ed9t ch\u1eef c\u00e1i th\u01b0\u1eddng trong chu\u1ed7i <\/span><span style=\"font-weight: 400; color: white; background-color: #6d9eeb;\">g123456<\/span><span style=\"font-weight: 400;\">.<\/span><span style=\"font-weight: 400;\"> Th\u1eed v\u1edbi character set: <span style=\"font-weight: 400; color: white; background-color: #999999;\">[a-z]<\/span><\/span><\/p>\n<p><span style=\"font-weight: 400;\">Link ch\u1ea1y th\u1eed regex <\/span><a href=\"https:\/\/regex101.com\/r\/iFv0N9\/1\" target=\"_blank\" rel=\"noopener\">https:\/\/regex101.com\/r\/iFv0N9\/1<\/a><\/p>\n<p><span style=\"font-weight: 400;\">D\u01b0\u1edbi \u0111\u00e2y l\u00e0 m\u1ed9t s\u1ed1 &#8220;shorthand Character Classes&#8221; ph\u1ed5 bi\u1ebfn:<\/span><\/p>\n<ul>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\\d: \u0110\u01b0\u1ee3c s\u1eed d\u1ee5ng \u0111\u1ec3 kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 ch\u1eef s\u1ed1 n\u00e0o t\u1eeb 0 \u0111\u1ebfn 9.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\\D: Kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 k\u00fd t\u1ef1 n\u00e0o kh\u00f4ng ph\u1ea3i l\u00e0 ch\u1eef s\u1ed1.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\\w: Kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 k\u00fd t\u1ef1 n\u00e0o l\u00e0 ch\u1eef c\u00e1i, ch\u1eef s\u1ed1 ho\u1eb7c d\u1ea5u g\u1ea1ch d\u01b0\u1edbi.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\\W: Kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 k\u00fd t\u1ef1 n\u00e0o kh\u00f4ng ph\u1ea3i l\u00e0 ch\u1eef c\u00e1i, ch\u1eef s\u1ed1 ho\u1eb7c d\u1ea5u g\u1ea1ch d\u01b0\u1edbi.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">\\s: Kh\u1edbp v\u1edbi k\u00fd t\u1ef1 kho\u1ea3ng tr\u1eafng (space).<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">\\S: Kh\u1edbp v\u1edbi b\u1ea5t k\u1ef3 k\u00fd t\u1ef1 n\u00e0o kh\u00f4ng ph\u1ea3i l\u00e0 kho\u1ea3ng tr\u1eafng<span>.<\/span><\/li>\n<\/ul>\n<p>Ex 3: <span style=\"font-weight: 400;\">C\u1ea7n t\u00ecm ki\u1ebfm k\u00fd t\u1ef1 kh\u00f4ng ph\u1ea3i l\u00e0 ch\u1eef c\u00e1i, ch\u1eef s\u1ed1 ho\u1eb7c d\u1ea5u g\u1ea1ch d\u01b0\u1edbi \u00a0<\/span><span style=\"font-weight: 400; color: white; background-color: #6d9eeb;\">g 1_2A2@33%4<\/span><span style=\"font-weight: 400;\">.<\/span><span style=\"font-weight: 400;\"> Th\u1eed v\u1edbi character set: <span style=\"font-weight: 400; color: white; background-color: #999999;\">\\W<\/span><\/span><\/p>\n<p><span style=\"font-weight: 400;\">Link ch\u1ea1y th\u1eed regex: <a href=\"https:\/\/regex101.com\/r\/ri8fOV\/3\" target=\"_blank\" rel=\"noopener\">https:\/\/regex101.com\/r\/ri8fOV\/3<\/a><\/span><\/p>\n<h2><span style=\"font-weight: 400;\">4. V\u00ed d\u1ee5 v\u1ec1 c\u00e1ch s\u1eed d\u1ee5ng Literal Characters, Special Characters v\u00e0 Character Classes.<\/span><\/h2>\n<p>Ki\u1ec3m tra xem email ng\u01b0\u1eddi d\u00f9ng nh\u1eadp v\u00e0o \u0111\u00fang v\u1edbi \u0111\u1ecbnh d\u1ea1ng mong mu\u1ed1n kh\u00f4ng:<\/p>\n<p><strong>&lt;t\u00ean email d\u00e0i t\u1eeb 3 \u0111\u1ebfn 20 k\u00fd t\u1ef1&gt;@gmail.com<\/strong><\/p>\n<p>Ta c\u00f3 chu\u1ed7i regex: <span style=\"font-weight: 400;\"><span style=\"font-weight: 400; color: white; background-color: #999999;\">^[a-zA-Z_0-9]+@gmail.com$<\/span><\/span><\/p>\n<p><span style=\"font-weight: 400;\">B\u1ea1n h\u00e3y ch\u1ea1y th\u1eed link b\u00ean d\u01b0\u1edbi:<\/span><\/p>\n<p><a href=\"https:\/\/regex101.com\/r\/21mp3g\/2\" target=\"_blank\" rel=\"noopener\">https:\/\/regex101.com\/r\/21mp3g\/2<\/a><\/p>\n<p>C\u00f3 ph\u1ea3i \u0111o\u1ea1n text nh\u1eadp v\u00e0o l\u00e0 m\u1ed9t email \u0111\u00fang nh\u01b0 m\u00f4 t\u1ea3 kh\u00f4ng. Ti\u1ebfp theo, h\u00e3y ch\u1ea1y link sau:<\/p>\n<p><a href=\"https:\/\/regex101.com\/r\/h2PFRh\/1\" target=\"_blank\" rel=\"noopener\">https:\/\/regex101.com\/r\/h2PFRh\/1<\/a><\/p>\n<p>K\u1ebft qu\u1ea3 l\u00e0 email nh\u1eadp v\u00e0o kh\u00f4ng kh\u1edbp v\u1edbi y\u00eau c\u1ea7u kh\u00f4ng? Nguy\u00ean nh\u00e2n do <strong>{3,20}\u00a0<\/strong>y\u00eau c\u1ea7u t\u00ean email ph\u1ea3i c\u00f3 \u0111\u1ed9 d\u00e0i t\u1eeb \u00edt nh\u1ea5t l\u00e0 3, v\u00e0 nhi\u1ec1u nh\u1ea5t l\u00e0 20 k\u00fd t\u1ef1.<\/p>\n<p>Th\u1eed b\u1ecf ^ v\u00e0 $ trong chu\u1ed7i <span style=\"font-weight: 400;\">pattern, s\u1eeda l\u1ea1i email th\u00eam % v\u00e0o cu\u1ed1i <a href=\"https:\/\/regex101.com\/r\/MITWpx\/1\" target=\"_blank\" rel=\"noopener\">https:\/\/regex101.com\/r\/MITWpx\/1<\/a> ta v\u1eabn t\u00ecm th\u1ea5y email \u0111\u00fang \u0111\u1ecbnh d\u1ea1ng c\u00f3 ph\u1ea3i kh\u00f4ng, nh\u01b0ng b\u1ea1n th\u1ea5y d\u01b0 &#8220;%&#8221; kh\u00f4ng. V\u1eady th\u00ec chu\u1ed7i n\u00e0y kh\u00f4ng h\u1ee3p v\u1edbi y\u00eau c\u1ea7u ban \u0111\u1ea7u. <\/span><\/p>\n<p><span style=\"font-weight: 400;\">B\u1ea1n c\u00f3 th\u1ea5y r\u1eb1ng pattern c\u1ee7a ch\u00fang ta c\u00f3 s\u1eed d\u1ee5ng c\u00e1c k\u00fd t\u1ef1 \u0111\u1eb7c bi\u1ec7t l\u00e0: <a href=\"https:\/\/www.marketenterprise.vn\/blog\/boundaries-and-anchors.html\"><strong>^<\/strong> (Caret (m\u0169)),\u00a0<strong>$\u00a0<\/strong>(<span>Dollar (\u0111\u00f4 la)<\/span>)<\/a>, {3,20}. Ta s\u1ebd n\u00f3i k\u1ef9 h\u01a1n c\u00e1ch ho\u1ea1t \u0111\u1ed9ng c\u1ee7a ch\u00fang trong b\u00e0i vi\u1ebft sau.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">\u0110\u1ec3 xem c\u00e1c patterns ho\u1ea1t \u0111\u1ed9ng nh\u01b0 th\u1ebf n\u00e0o, m\u1edf link <strong>regex101<\/strong> \u0111\u00ednh k\u00e8m, nh\u1ea5n <strong>Regex Debugger<\/strong> g\u00f3c tr\u00e1i b\u00ean d\u01b0\u1edbi m\u00e0n h\u00ecnh, nh\u1ea5n v\u00e0o c\u00e1c d\u1ea5u m\u0169i t\u00ean xem v\u00e0 hi\u1ec3u h\u01a1n <a href=\"https:\/\/www.marketenterprise.vn\/blog\/regex-hoat-dong-ra-sao.html\">c\u00e1ch regex engine ho\u1ea1t \u0111\u1ed9ng<\/a>.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2024\/05\/07174517\/Screenshot-2024-04-22-at-18.10.52-300x172.png\" alt=\"Regex Debugger\" width=\"300\" height=\"172\" class=\"aligncenter wp-image-3968 size-medium\" srcset=\"https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2024\/05\/07174517\/Screenshot-2024-04-22-at-18.10.52-300x172.png 300w, https:\/\/mevn-public.s3-ap-southeast-1.amazonaws.com\/marketenterprise.vn\/wp-images\/2024\/05\/07174517\/Screenshot-2024-04-22-at-18.10.52.png 446w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/p>\n<p style=\"text-align: center;\">H\u00ecnh 2: <span style=\"font-weight: 400;\">Regex Debugger<\/span><\/p>\n<p><span style=\"font-weight: 400;\">C\u1ea3m \u01a1n c\u00e1c b\u1ea1n \u0111\u00e3 d\u00e0nh th\u1eddi gian \u0111\u1ecdc b\u00e0i vi\u1ebft.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Ngu\u1ed3n tham kh\u1ea3o:\u00a0<\/span><\/p>\n<p><a href=\"https:\/\/www.regular-expressions.info\/characters.html\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">https:\/\/www.regular-expressions.info\/characters.html<\/span><\/a><\/p>\n<p><a href=\"https:\/\/www.regular-expressions.info\/shorthand.html\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">https:\/\/www.regular-expressions.info\/shorthand.html<\/span><\/a><\/p>\n<p><a href=\"https:\/\/www.regular-expressions.info\/charclass.html\" target=\"_blank\" rel=\"noopener\"><span style=\"font-weight: 400;\">https:\/\/www.regular-expressions.info\/charclass.html<\/span><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Literal characters, special characters, character classes l\u00e0 g\u00ec?<\/p>\n","protected":false},"author":37,"featured_media":4048,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-3960","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-technology"],"_links":{"self":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/posts\/3960","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/users\/37"}],"replies":[{"embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/comments?post=3960"}],"version-history":[{"count":0,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/posts\/3960\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/media\/4048"}],"wp:attachment":[{"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/media?parent=3960"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/categories?post=3960"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.marketenterprise.vn\/blog\/wp-json\/wp\/v2\/tags?post=3960"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}