{"id":14000,"date":"2021-08-20T19:43:51","date_gmt":"2021-08-20T19:43:51","guid":{"rendered":"https:\/\/freehost.page\/?p=14000"},"modified":"2021-08-20T19:43:51","modified_gmt":"2021-08-20T19:43:51","slug":"regex-chu-thich-cuoi-ten","status":"publish","type":"post","link":"https:\/\/kiencang.net\/regex-chu-thich-cuoi-ten\/","title":{"rendered":"C\u00e2u l\u1ec7nh Regex \u0111\u1ec3 nh\u1eadn bi\u1ebft c\u00e1c k\u00fd t\u1ef1 ch\u00fa th\u00edch cu\u1ed1i t\u00ean v\u00e0 d\u00f9ng PHP \u0111\u1ec3 x\u1eed l\u00fd"},"content":{"rendered":"\n

<\/p>\n\n\n\n

D\u1eef li\u1ec7u thu th\u1eadp c\u00f3 th\u1ec3 c\u00f3 nh\u1eefng t\u00ean nh\u01b0 th\u1ebf n\u00e0y: H\u00e0m PHP ph\u00e1t hi\u1ec7n c\u00e1c k\u00fd t\u1ef1 l\u1ea1 trong h\u1ecd t\u00ean ng\u01b0\u1eddi Vi\u1ec7t Nam (v1.2)<\/a><\/p>\n\n\n\n

Nguy\u1ec5n \u0110\u1ee9c Anh\/b\nNguy\u1ec5n \u0110\u1ee9c Anh (mb)\nNguy\u1ec5n \u0110\u1ee9c Anh (hn)\nNguy\u1ec5n \u0110\u1ee9c Anh (hsdb)\nNguy\u1ec5n \u0110\u1ee9c Anh - b\nNguy\u1ec5n \u0110\u1ee9c Anh.b\nNguy\u1ec5n \u0110\u1ee9c Anh -b\nNguy\u1ec5n \u0110\u1ee9c Anh-b\nNguy\u1ec5n \u0110\u1ee9c a\nNguy\u1ec5n \u0110\u1ee9c Anh b\nNguy\u1ec5n \u0110\u1ee9c Anh (a)\nNguy\u1ec5n \u0110\u1ee9c Anh (b)\nNguy\u1ec5n \u0110\u1ee9c Anh (a\nNguy\u1ec5n \u0110\u1ee9c Anh (b\nNguy\u1ec5n \u0110\u1ee9c Anh (b\nNguy\u1ec5n \u0110\u1ee9c Anha)\nNguy\u1ec5n \u0110\u1ee9c Anh(b)\nNguy\u1ec5n \u0110\u1ee9c Anh (a )\nNguy\u1ec5n \u0110\u1ee9c Anh ( c)\nNguy\u1ec5n \u0110\u1ee9c Anh1\nNguy\u1ec5n \u0110\u1ee9c Anh2\nNguy\u1ec5n \u0110\u1ee9c Anh 1\nNguy\u1ec5n \u0110\u1ee9c Anh 2\nNguy\u1ec5n \u0110\u1ee9c Anh (1)\nNguy\u1ec5n \u0110\u1ee9c Anh (21)<\/code><\/pre>\n\n\n\n

\u0110\u00e2y l\u00e0 c\u00e1c ch\u00fa th\u00edch ph\u1ed5 bi\u1ebfn khi m\u00e0 trong danh s\u00e1ch c\u00f3 nh\u1eefng ng\u01b0\u1eddi c\u00f9ng t\u00ean \u0111\u1ec3 ph\u00e2n bi\u1ec7t ng\u01b0\u1eddi n\u1ecd v\u1edbi ng\u01b0\u1eddi kia (v\u00ed d\u1ee5 trong l\u1edbp h\u1ecdc, trong nh\u00f3m ngo\u1ea1i kh\u00f3a, v\u00e2n v\u00e2n) ho\u1eb7c \u0111\u1ec3 b\u1ed5 sung th\u00f4ng tin \u0111\u1eb7c bi\u1ec7t cho t\u00ean.<\/p>\n\n\n\n

Nhi\u1ec7m v\u1ee5 c\u1ee7a ch\u00fang ta l\u00e0 nh\u1eadn bi\u1ebft c\u00e1c k\u00fd t\u1ef1 d\u01b0 v\u00e0 lo\u1ea1i b\u1ecf n\u00f3 \u0111i. C\u00e2u l\u1ec7nh regex (bi\u1ec3u th\u1ee9c ch\u00ednh quy)<\/a> \u0111\u1ec3 l\u00e0m \u0111i\u1ec1u n\u00e0y l\u00e0:<\/p>\n\n\n\n

$pt='\/(\\(\\s*)[abcd|\\d](\\s*\\)*)$|\\d$|\\s+[abcd]$|[abcd]\\)|\\([a-z]+\\)$|[\\-,.\\\/]\\s*[abcd]$|\\(\\d{1,}\\)$\/';<\/code><\/pre>\n\n\n\n

B\u1ea1n c\u00f3 th\u1ec3 thay abcd b\u1eb1ng ABCD n\u1ebfu m\u1eabu c\u1ee7a b\u1ea1n l\u00e0 d\u1ea1ng vi\u1ebft hoa nh\u01b0 ki\u1ec3u Nguy\u1ec5n \u0110\u1ee9c Anh (A)<\/code><\/p>\n\n\n\n

Ti\u1ebfp \u0111\u1ebfn ch\u00fang ta s\u1ebd d\u00f9ng l\u1ec7nh preg_match<\/a><\/code> \u0111\u1ec3 so kh\u1edbp v\u1edbi m\u1eabu t\u00ecm ki\u1ebfm, v\u00e0 l\u1ec7nh preg_replace<\/a><\/code> \u0111\u1ec3 x\u00f3a c\u00e1c k\u00fd t\u1ef1 kh\u00f4ng c\u1ea7n thi\u1ebft n\u00e0y:<\/p>\n\n\n\n

if (preg_match($pt, $tencu)) {\n    $tenmoi = preg_replace($pt, '', $tencu);\n    echo \"H\u1ecd t\u00ean c\u0169: <strong>\".$tencu.\"<\/strong> \".\"H\u1ecd t\u00ean m\u1edbi: <strong>\".$tenmoi.\"<\/strong>\";\n    echo \"<\/br>\";\n}<\/code><\/pre>\n\n\n\n

Ti\u1ebfp theo ch\u00fang ta c\u1ea7n xu\u1ea5t n\u00f3 ra m\u00e0n h\u00ecnh \u0111\u1ec3 xem c\u00f3 tr\u01b0\u1eddng h\u1ee3p ngo\u1ea1i l\u1ec7 n\u00e0o kh\u00f4ng tr\u01b0\u1edbc khi th\u1ef1c hi\u1ec7n can thi\u1ec7p d\u1eef li\u1ec7u th\u1ef1c s\u1ef1. V\u00ed d\u1ee5, tr\u01b0\u1eddng h\u1ee3p tr\u00ean s\u1ebd kh\u00f4ng ch\u00ednh x\u00e1c v\u1edbi t\u00ean ng\u01b0\u1eddi ch\u1ec9 c\u00f3 m\u1ed9t k\u00fd t\u1ef1. V\u00ed d\u1ee5 Nguy\u1ec5n \u0110\u1ee9c A, tuy nhi\u00ean tr\u01b0\u1eddng h\u1ee3p n\u00e0y th\u00ec c\u1ef1c k\u1ef3 hi\u1ebfm, n\u00ean m\u00e3 regex tr\u00ean c\u00f3 th\u1ec3 n\u00f3i l\u00e0 gi\u1ea3i quy\u1ebft \u0111\u01b0\u1ee3c v\u1ea5n \u0111\u1ec1 li\u00ean quan \u0111\u1ebfn c\u00e1c ch\u00fa th\u00edch cu\u1ed1i t\u00ean.<\/p>\n\n\n\n

PS: m\u1ed9t m\u1eb9o \u0111\u1ec3 s\u1eed d\u1ee5ng regex t\u1ed1t l\u00e0 test tr\u01b0\u1edbc n\u00f3, \u1ed5n r\u1ed3i b\u1ea1n m\u1edbi copy l\u1ec7nh v\u00e0o PHP (trong PHP th\u00ec b\u1ea1n \u0111\u01b0a n\u00f3 v\u00e0o gi\u1eefa hai d\u1ea5u '\/regex \u0111\u1eb7t \u1edf \u0111\u00e2y\/'<\/code>). C\u00e1ch d\u1ec5 nh\u1ea5t l\u00e0 b\u1ea1n d\u00f9ng trang Regex101. B\u1ea1n c\u00f3 th\u1ec3 xem m\u00e3 l\u1ec7nh t\u00f4i v\u1eeba d\u00f9ng l\u01b0u tr\u00ean trang \u0111\u00f3<\/a>.<\/p>\n\n\n\n

\"ki\u1ec3m<\/figure><\/div>\n","protected":false},"excerpt":{"rendered":"

D\u1eef li\u1ec7u thu th\u1eadp c\u00f3 th\u1ec3 c\u00f3 nh\u1eefng t\u00ean nh\u01b0 th\u1ebf n\u00e0y: H\u00e0m PHP ph\u00e1t hi\u1ec7n c\u00e1c k\u00fd t\u1ef1 l\u1ea1 trong h\u1ecd t\u00ean ng\u01b0\u1eddi Vi\u1ec7t Nam (v1.2) \u0110\u00e2y l\u00e0 c\u00e1c ch\u00fa th\u00edch ph\u1ed5 bi\u1ebfn khi m\u00e0 trong danh s\u00e1ch c\u00f3 nh\u1eefng ng\u01b0\u1eddi c\u00f9ng t\u00ean \u0111\u1ec3 ph\u00e2n bi\u1ec7t ng\u01b0\u1eddi n\u1ecd v\u1edbi ng\u01b0\u1eddi kia (v\u00ed d\u1ee5 trong …<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[238],"tags":[],"yoast_head":"\nC\u00e2u l\u1ec7nh Regex \u0111\u1ec3 nh\u1eadn bi\u1ebft c\u00e1c k\u00fd t\u1ef1 ch\u00fa th\u00edch cu\u1ed1i t\u00ean v\u00e0 d\u00f9ng PHP \u0111\u1ec3 x\u1eed l\u00fd • Ki\u1ebfn c\u00e0ng<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kiencang.net\/regex-chu-thich-cuoi-ten\/\" \/>\n<meta property=\"og:locale\" content=\"vi_VN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C\u00e2u l\u1ec7nh Regex \u0111\u1ec3 nh\u1eadn bi\u1ebft c\u00e1c k\u00fd t\u1ef1 ch\u00fa th\u00edch cu\u1ed1i t\u00ean v\u00e0 d\u00f9ng PHP \u0111\u1ec3 x\u1eed l\u00fd • Ki\u1ebfn c\u00e0ng\" \/>\n<meta property=\"og:description\" content=\"D\u1eef li\u1ec7u thu th\u1eadp c\u00f3 th\u1ec3 c\u00f3 nh\u1eefng t\u00ean nh\u01b0 th\u1ebf n\u00e0y: H\u00e0m PHP ph\u00e1t hi\u1ec7n c\u00e1c k\u00fd t\u1ef1 l\u1ea1 trong h\u1ecd t\u00ean ng\u01b0\u1eddi Vi\u1ec7t Nam (v1.2) \u0110\u00e2y l\u00e0 c\u00e1c ch\u00fa th\u00edch ph\u1ed5 bi\u1ebfn khi m\u00e0 trong danh s\u00e1ch c\u00f3 nh\u1eefng ng\u01b0\u1eddi c\u00f9ng t\u00ean \u0111\u1ec3 ph\u00e2n bi\u1ec7t ng\u01b0\u1eddi n\u1ecd v\u1edbi ng\u01b0\u1eddi kia (v\u00ed d\u1ee5 trong …\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kiencang.net\/regex-chu-thich-cuoi-ten\/\" \/>\n<meta property=\"og:site_name\" content=\"Ki\u1ebfn c\u00e0ng\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/anhducnguyen87\/\" \/>\n<meta property=\"article:published_time\" content=\"2021-08-20T19:43:51+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kiencang.net\/wp-content\/uploads\/2021\/08\/test-regex.png\" \/>\n<meta name=\"author\" content=\"Nguy\u1ec5n \u0110\u1ee9c Anh\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi\" \/>\n\t<meta name=\"twitter:data1\" content=\"Nguy\u1ec5n \u0110\u1ee9c Anh\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 ph\u00fat\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"C\u00e2u l\u1ec7nh Regex \u0111\u1ec3 nh\u1eadn bi\u1ebft c\u00e1c k\u00fd t\u1ef1 ch\u00fa th\u00edch cu\u1ed1i t\u00ean v\u00e0 d\u00f9ng PHP \u0111\u1ec3 x\u1eed l\u00fd • Ki\u1ebfn c\u00e0ng","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kiencang.net\/regex-chu-thich-cuoi-ten\/","og_locale":"vi_VN","og_type":"article","og_title":"C\u00e2u l\u1ec7nh Regex \u0111\u1ec3 nh\u1eadn bi\u1ebft c\u00e1c k\u00fd t\u1ef1 ch\u00fa th\u00edch cu\u1ed1i t\u00ean v\u00e0 d\u00f9ng PHP \u0111\u1ec3 x\u1eed l\u00fd • Ki\u1ebfn c\u00e0ng","og_description":"D\u1eef li\u1ec7u thu th\u1eadp c\u00f3 th\u1ec3 c\u00f3 nh\u1eefng t\u00ean nh\u01b0 th\u1ebf n\u00e0y: H\u00e0m PHP ph\u00e1t hi\u1ec7n c\u00e1c k\u00fd t\u1ef1 l\u1ea1 trong h\u1ecd t\u00ean ng\u01b0\u1eddi Vi\u1ec7t Nam (v1.2) \u0110\u00e2y l\u00e0 c\u00e1c ch\u00fa th\u00edch ph\u1ed5 bi\u1ebfn khi m\u00e0 trong danh s\u00e1ch c\u00f3 nh\u1eefng ng\u01b0\u1eddi c\u00f9ng t\u00ean \u0111\u1ec3 ph\u00e2n bi\u1ec7t ng\u01b0\u1eddi n\u1ecd v\u1edbi ng\u01b0\u1eddi kia (v\u00ed d\u1ee5 trong …","og_url":"https:\/\/kiencang.net\/regex-chu-thich-cuoi-ten\/","og_site_name":"Ki\u1ebfn c\u00e0ng","article_author":"https:\/\/www.facebook.com\/anhducnguyen87\/","article_published_time":"2021-08-20T19:43:51+00:00","og_image":[{"url":"https:\/\/kiencang.net\/wp-content\/uploads\/2021\/08\/test-regex.png"}],"author":"Nguy\u1ec5n \u0110\u1ee9c Anh","twitter_card":"summary_large_image","twitter_misc":{"\u0110\u01b0\u1ee3c vi\u1ebft b\u1edfi":"Nguy\u1ec5n \u0110\u1ee9c Anh","\u01af\u1edbc t\u00ednh th\u1eddi gian \u0111\u1ecdc":"2 ph\u00fat"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/kiencang.net\/regex-chu-thich-cuoi-ten\/","url":"https:\/\/kiencang.net\/regex-chu-thich-cuoi-ten\/","name":"C\u00e2u l\u1ec7nh Regex \u0111\u1ec3 nh\u1eadn bi\u1ebft c\u00e1c k\u00fd t\u1ef1 ch\u00fa th\u00edch cu\u1ed1i t\u00ean v\u00e0 d\u00f9ng PHP \u0111\u1ec3 x\u1eed l\u00fd • Ki\u1ebfn c\u00e0ng","isPartOf":{"@id":"https:\/\/kiencang.net\/#website"},"datePublished":"2021-08-20T19:43:51+00:00","dateModified":"2021-08-20T19:43:51+00:00","author":{"@id":"https:\/\/kiencang.net\/#\/schema\/person\/5e7e1a04d8d1218ad8c421ba43d25c16"},"breadcrumb":{"@id":"https:\/\/kiencang.net\/regex-chu-thich-cuoi-ten\/#breadcrumb"},"inLanguage":"vi","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kiencang.net\/regex-chu-thich-cuoi-ten\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/kiencang.net\/regex-chu-thich-cuoi-ten\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kiencang.net\/"},{"@type":"ListItem","position":2,"name":"C\u00e2u l\u1ec7nh Regex \u0111\u1ec3 nh\u1eadn bi\u1ebft c\u00e1c k\u00fd t\u1ef1 ch\u00fa th\u00edch cu\u1ed1i t\u00ean v\u00e0 d\u00f9ng PHP \u0111\u1ec3 x\u1eed l\u00fd"}]},{"@type":"WebSite","@id":"https:\/\/kiencang.net\/#website","url":"https:\/\/kiencang.net\/","name":"Ki\u1ebfn c\u00e0ng","description":"\u00d4m l\u00fd thuy\u1ebft, h\u00f4n th\u1ef1c h\u00e0nh","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kiencang.net\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"vi"},{"@type":"Person","@id":"https:\/\/kiencang.net\/#\/schema\/person\/5e7e1a04d8d1218ad8c421ba43d25c16","name":"Nguy\u1ec5n \u0110\u1ee9c Anh","image":{"@type":"ImageObject","inLanguage":"vi","@id":"https:\/\/kiencang.net\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6d71f9b89393952a8382e30dad26c1ec?s=96&d=monsterid&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6d71f9b89393952a8382e30dad26c1ec?s=96&d=monsterid&r=g","caption":"Nguy\u1ec5n \u0110\u1ee9c Anh"},"description":"Sinh n\u0103m 1987, t\u1ed1t nghi\u1ec7p Cao \u0111\u1eb3ng th\u1ef1c h\u00e0nh FPT qu\u00e3ng 2014, chuy\u00ean ng\u00e0nh Thi\u1ebft k\u1ebf website. T\u00f4i th\u00edch Content, SEO, Ads, T\u0103ng t\u1ed1c website v\u00e0 Th\u01b0\u01a1ng m\u1ea1i \u0111i\u1ec7n t\u1eed. B\u00ean c\u1ea1nh b\u00e0i t\u1ef1 vi\u1ebft, t\u00f4i c\u0169ng d\u1ecbch nhi\u1ec1u n\u1ed9i dung th\u00fa v\u1ecb c\u1ee7a c\u00e1c t\u00e1c gi\u1ea3 kh\u00e1c nhau. FB c\u00e1 nh\u00e2n: facebook.com\/anhducnguyen87. Email li\u00ean h\u1ec7: guiemailchotoi@gmail.com","sameAs":["https:\/\/www.facebook.com\/anhducnguyen87\/"],"url":"https:\/\/kiencang.net\/author\/admin\/"}]}},"_links":{"self":[{"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/posts\/14000"}],"collection":[{"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/comments?post=14000"}],"version-history":[{"count":0,"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/posts\/14000\/revisions"}],"wp:attachment":[{"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/media?parent=14000"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/categories?post=14000"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kiencang.net\/wp-json\/wp\/v2\/tags?post=14000"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}