តារាងមាតិកា
នៅក្នុងខ្សែអក្សរខាងក្រោម ឧបមាថាអ្នកចង់លុបលេខលំដាប់ទីមួយ។ លេខទាំងអស់នេះចាប់ផ្ដើមដោយសញ្ញាសញ្ញា (#) ហើយមាន 5 ខ្ទង់។ ដូច្នេះ យើងអាចកំណត់អត្តសញ្ញាណពួកវាដោយប្រើ regex នេះ៖
លំនាំ : #\d{5}\b
ពាក្យ boundary \b បញ្ជាក់ថាខ្សែអក្សររងដែលត្រូវគ្នាមិនអាចជា ផ្នែកនៃខ្សែអក្សរធំជាងដូចជា #10000001។
ដើម្បីលុបការផ្គូផ្គងទាំងអស់ អាគុយម៉ង់ instance_num មិនត្រូវបានកំណត់ទេ៖
=RegExpReplace(A5, "#\d{5}\b", "")
ដើម្បីលុបបំបាត់តែការកើតឡើងដំបូង យើងកំណត់អាគុយម៉ង់ instance_num ទៅ 1:
=RegExpReplace(A5, "#\d{5}\b", "", 1)
Regex ដើម្បីលុបតួអក្សរជាក់លាក់
ដើម្បីដកតួអក្សរជាក់លាក់ចេញពីខ្សែអក្សរ គ្រាន់តែសរសេរតួអក្សរដែលមិនចង់បានទាំងអស់ ហើយបំបែកពួកវាដោយរបារបញ្ឈរ។វាក្យសម្ព័ន្ធគ្មានដែនកំណត់ VBA RegExp ហើយទីពីរ មិនតម្រូវឱ្យបញ្ចូលកូដ VBA ណាមួយនៅក្នុងសៀវភៅការងាររបស់អ្នកទេ ព្រោះការរួមបញ្ចូលកូដទាំងអស់ត្រូវបានធ្វើឡើងដោយពួកយើងនៅផ្នែកខាងក្រោយ។
ផ្នែកនៃការងាររបស់អ្នកគឺដើម្បីបង្កើតកន្សោមធម្មតា និង បម្រើវាទៅមុខងារ :) ខ្ញុំសូមបង្ហាញអ្នកពីរបៀបធ្វើវានៅលើឧទាហរណ៍ជាក់ស្តែង។
របៀបលុបអត្ថបទក្នុងតង្កៀប និងវង់ក្រចកដោយប្រើ regex
នៅក្នុងខ្សែអក្សរវែង ព័ត៌មានមិនសូវសំខាន់ ជារឿយៗត្រូវបានរុំព័ទ្ធក្នុង [តង្កៀប] និង (វង់ក្រចក)។ តើអ្នកលុបព័ត៌មានលម្អិតដែលមិនពាក់ព័ន្ធទាំងនោះដោយរបៀបណាដែលរក្សាទិន្នន័យផ្សេងទៀតទាំងអស់?
តាមពិត យើងបានបង្កើត regex ស្រដៀងគ្នារួចហើយសម្រាប់ការលុបស្លាក html ពោលគឺអត្ថបទក្នុងតង្កៀបមុំ។ ជាក់ស្តែង វិធីសាស្ត្រដូចគ្នានឹងដំណើរការសម្រាប់តង្កៀបការ៉េ និងមូលផងដែរ។
លំនាំ : (\.*?\))
តើអ្នកធ្លាប់គិតទេថា Excel នឹងមានថាមពលខ្លាំងប៉ុណ្ណា ប្រសិនបើនរណាម្នាក់អាចបង្កើនប្រអប់ឧបករណ៍របស់ខ្លួនជាមួយនឹងកន្សោមធម្មតា? យើងមិនត្រឹមតែបានគិតទេ ប៉ុន្តែបានធ្វើការលើវា :) ហើយឥឡូវនេះ អ្នកអាចបន្ថែមមុខងារ RegEx ដ៏អស្ចារ្យនេះទៅក្នុងសៀវភៅការងារផ្ទាល់ខ្លួនរបស់អ្នក ហើយលុបខ្សែអក្សររងដែលផ្គូផ្គងនឹងលំនាំមួយភ្លាមៗ!
កាលពីសប្តាហ៍មុន យើងបានមើល របៀបប្រើកន្សោមធម្មតាដើម្បីជំនួសខ្សែអក្សរក្នុង Excel ។ សម្រាប់បញ្ហានេះ យើងបានបង្កើតមុខងារ Regex Replace ផ្ទាល់ខ្លួន។ ដូចដែលវាបានប្រែក្លាយ មុខងារនេះហួសពីការប្រើប្រាស់ចម្បងរបស់វា ហើយមិនត្រឹមតែអាចជំនួសខ្សែអក្សរប៉ុណ្ណោះទេ ប៉ុន្តែថែមទាំងយកវាចេញទៀតផង។ តើនោះអាចទៅជាយ៉ាងណា? នៅក្នុងលក្ខខណ្ឌនៃ Excel ការដកតម្លៃចេញគឺគ្មានអ្វីក្រៅពីការជំនួសវាដោយខ្សែអក្សរទទេ អ្វីមួយដែលមុខងារ Regex របស់យើងគឺល្អណាស់!
មុខងារ VBA RegExp ដើម្បីលុបខ្សែអក្សររងក្នុង Excel
ដូចដែលយើងដឹងស្រាប់ កន្សោមធម្មតាមិនត្រូវបានគាំទ្រក្នុង Excel តាមលំនាំដើមទេ។ ដើម្បីបើកពួកវា អ្នកត្រូវបង្កើតមុខងារកំណត់ដោយអ្នកប្រើប្រាស់ផ្ទាល់ខ្លួនរបស់អ្នក។ ដំណឹងល្អគឺថាមុខងារបែបនេះត្រូវបានសរសេរ សាកល្បង និងរួចរាល់សម្រាប់ការប្រើប្រាស់។ អ្វីដែលអ្នកត្រូវធ្វើគឺចម្លងកូដនេះ បិទភ្ជាប់វានៅក្នុងកម្មវិធីនិពន្ធ VBA របស់អ្នក ហើយបន្ទាប់មករក្សាទុកឯកសាររបស់អ្នកជា សៀវភៅការងារដែលអាចប្រើម៉ាក្រូ (.xlsm)។
មុខងារមាន វាក្យសម្ព័ន្ធខាងក្រោម៖
RegExpReplace(អត្ថបទ លំនាំ ការជំនួស [instance_num], [match_case])អាគុយម៉ង់បីដំបូងត្រូវបានទាមទារ ពីរចុងក្រោយគឺស្រេចចិត្ត។
កន្លែងណា៖
- អត្ថបទ - ខ្សែអក្សរដើម្បីស្វែងរកអាចធ្វើទៅបានរហូតដល់វារកឃើញតង្កៀបបិទ។
លំនាំណាមួយដែលអ្នកជ្រើសរើស លទ្ធផលនឹងដូចគ្នាទាំងស្រុង។
ឧទាហរណ៍ ដើម្បីលុបស្លាក html ទាំងអស់ចេញពីខ្សែអក្សរ A5 ហើយទុកអត្ថបទ។ រូបមន្តគឺ៖
=RegExpReplace(A5, "]*>", "")
ឬអ្នកអាចប្រើ quantifier ខ្ជិល ដូចបង្ហាញក្នុងរូបថតអេក្រង់៖
ដំណោះស្រាយនេះដំណើរការយ៉ាងល្អឥតខ្ចោះសម្រាប់ អត្ថបទតែមួយ (ជួរទី ៥ - ៩) ។ សម្រាប់អត្ថបទច្រើន (ជួរទី 10 - 12) លទ្ធផលគឺអាចសួរបាន - អត្ថបទពីស្លាកផ្សេងៗគ្នាត្រូវបានបញ្ចូលទៅក្នុងមួយ។ តើនេះត្រឹមត្រូវឬអត់? ខ្ញុំខ្លាច វាមិនមែនជាអ្វីដែលអាចសម្រេចចិត្តបានយ៉ាងងាយស្រួលនោះទេ - ទាំងអស់គឺអាស្រ័យលើការយល់ដឹងរបស់អ្នកអំពីលទ្ធផលដែលអ្នកចង់បាន។ ឧទាហរណ៍នៅក្នុង B11 លទ្ធផល "A1" ត្រូវបានរំពឹងទុក; ខណៈពេលដែលនៅក្នុង B10 អ្នកប្រហែលជាចង់ឱ្យ "data1" និង "data2" បំបែកដោយដកឃ្លាមួយ។
ដើម្បីលុបស្លាក html និងបំបែកអត្ថបទដែលនៅសល់ដោយដកឃ្លា អ្នកអាចបន្តតាមវិធីនេះ៖
- ជំនួសស្លាកដោយដកឃ្លា " " មិនមែនខ្សែអក្សរទទេទេ៖
=RegExpReplace(A5, "]*>", " ")
- កាត់បន្ថយចន្លោះច្រើនទៅជាតួអក្សរដកឃ្លាតែមួយ៖
=RegExpReplace(RegExpReplace(A5, "]*>", " "), " +", " ")
- កាត់បន្ថយចន្លោះនាំមុខ និងនៅពីក្រោយ៖
=TRIM(RegExpReplace(RegExpReplace(A5, "]*>", " "), " +", " "))
លទ្ធផលនឹងមើលទៅដូចនេះ៖
Ablebits Regex Remove Tool
ប្រសិនបើអ្នកមានឱកាសប្រើ Ultimate Suite របស់យើងសម្រាប់ Excel អ្នកប្រហែលជាបានរកឃើញឧបករណ៍ Regex ថ្មីដែលបានណែនាំជាមួយនឹងការចេញផ្សាយថ្មីៗនេះរួចហើយ។ ភាពស្រស់ស្អាតនៃមុខងារ Regex ដែលមានមូលដ្ឋានលើ .NET នេះគឺថា ជាដំបូង ពួកវាគាំទ្រការបញ្ចេញមតិធម្មតាដែលមានលក្ខណៈពិសេសពេញលេញ។ជម្រើស Remove ហើយចុច Remove ។
ដើម្បីទទួលបានលទ្ធផលជារូបមន្ត មិនមែនតម្លៃទេ សូមជ្រើសរើសប្រអប់ធីក Insert as a formula ។
ដើម្បីលុបអត្ថបទក្នុងតង្កៀបចេញពីខ្សែអក្សរក្នុង A2:A5 យើងកំណត់រចនាសម្ព័ន្ធការកំណត់ ដូចតទៅ៖
ជាលទ្ធផល មុខងារ AblebitsRegexRemove ត្រូវបានបញ្ចូលក្នុងជួរឈរថ្មីនៅជាប់នឹងទិន្នន័យដើមរបស់អ្នក។
មុខងារនេះក៏អាចបញ្ចូលដោយផ្ទាល់នៅក្នុងក្រឡាមួយតាមរយៈប្រអប់ស្តង់ដារ បញ្ចូលមុខងារ ដែលវាត្រូវបានចាត់ថ្នាក់នៅក្រោម AblebitsUDFs ។
ដូចដែល AblebitsRegexRemove ត្រូវបានរចនាឡើងដើម្បីលុបអត្ថបទ វាទាមទារតែអាគុយម៉ង់ពីរប៉ុណ្ណោះ - ខ្សែអក្សរប្រភព និង regex ។ ប៉ារ៉ាម៉ែត្រទាំងពីរអាចត្រូវបានកំណត់ដោយផ្ទាល់នៅក្នុងរូបមន្តមួយ ឬត្រូវបានផ្គត់ផ្គង់ក្នុងទម្រង់នៃសេចក្តីយោងក្រឡា។ ប្រសិនបើចាំបាច់ មុខងារផ្ទាល់ខ្លួននេះអាចត្រូវបានប្រើរួមគ្នាជាមួយឧបករណ៍ដើមណាមួយ។
ឧទាហរណ៍ ដើម្បីកាត់បន្ថយចន្លោះបន្ថែមនៅក្នុងខ្សែអក្សរលទ្ធផល អ្នកអាចប្រើប្រាស់មុខងារ TRIM ជាការរុំ៖
=TRIM(AblebitsRegexRemove(A5, $A$2))
នោះជារបៀបលុបខ្សែអក្សរក្នុង Excel ដោយប្រើកន្សោមធម្មតា។ ខ្ញុំសូមអរគុណចំពោះការអាន ហើយទន្ទឹងរង់ចាំជួបអ្នកនៅលើប្លក់របស់យើងនៅសប្តាហ៍ក្រោយ!
ការទាញយកដែលមាន
លុបខ្សែអក្សរដោយប្រើ regex - ឧទាហរណ៍ (.xlsm file)
Ultimate Suite - កំណែសាកល្បង (ឯកសារ .exe)
នៅក្នុង។សម្រាប់ព័ត៌មានបន្ថែម សូមមើលមុខងារ RegExpReplace។
គន្លឹះ។ ក្នុងករណីសាមញ្ញ អ្នកអាចដកតួអក្សរ ឬពាក្យជាក់លាក់ចេញពីក្រឡាដោយប្រើរូបមន្ត Excel ។ ប៉ុន្តែកន្សោមធម្មតាផ្តល់នូវជម្រើសជាច្រើនទៀតសម្រាប់រឿងនេះ។
របៀបយកខ្សែអក្សរចេញដោយប្រើកន្សោមធម្មតា - ឧទាហរណ៍
ដូចដែលបានរៀបរាប់ខាងលើ ដើម្បីលុបផ្នែកនៃអត្ថបទដែលត្រូវនឹងលំនាំ អ្នកត្រូវជំនួសពួកវា ជាមួយនឹងខ្សែទទេ។ ដូច្នេះ រូបមន្តទូទៅយករូបរាងនេះ៖
RegExpReplace(អត្ថបទ លំនាំ "", [instance_num], [match_case])ឧទាហរណ៍ខាងក្រោមបង្ហាញពីការអនុវត្តផ្សេងៗនៃគោលគំនិតមូលដ្ឋាននេះ។
ដកចេញ ការផ្គូផ្គងទាំងអស់ ឬការប្រកួតជាក់លាក់
មុខងារ RegExpReplace ត្រូវបានរចនាឡើងដើម្បីស្វែងរកខ្សែអក្សររងទាំងអស់ដែលត្រូវគ្នានឹង regex ដែលបានផ្តល់ឱ្យ។ ការកើតឡើងដែលត្រូវដកចេញត្រូវបានគ្រប់គ្រងដោយអាគុយម៉ង់ជម្រើសទី 4 ដែលមានឈ្មោះថា instance_num ។
លំនាំដើមគឺ "ការផ្គូផ្គងទាំងអស់" - នៅពេលដែល instance_num ប្រតិបត្តិករភ្ជាប់ (&) និងមុខងារអត្ថបទដូចជា ស្តាំ កណ្តាល និងឆ្វេង។
ឧទាហរណ៍ ដើម្បីសរសេរលេខទូរស័ព្ទទាំងអស់ក្នុងទម្រង់ (123) 456-7890 រូបមន្តគឺ៖
="("&LEFT(B5, 3)&") "&MID(B5, 4, 3)&"-"&RIGHT(B5, 4)
កន្លែងដែល B5 ជាលទ្ធផលនៃអនុគមន៍ RegExpReplace។
លុបតួអក្សរពិសេសដោយប្រើ regex
នៅក្នុងមេរៀនមួយរបស់យើង យើងបានមើលពីរបៀបលុបតួអក្សរដែលមិនចង់បាននៅក្នុង Excel ដោយប្រើមុខងារ inbuilt និងផ្ទាល់ខ្លួន។ ការបញ្ចេញមតិធម្មតាធ្វើឱ្យអ្វីៗកាន់តែងាយស្រួល! ជំនួសឱ្យការចុះបញ្ជីតួអក្សរទាំងអស់ដែលត្រូវលុប គ្រាន់តែបញ្ជាក់តួអក្សរដែលអ្នកចង់រក្សាទុក :)
លំនាំគឺផ្អែកលើ ថ្នាក់តួអក្សរអវិជ្ជមាន - អក្សរកាត់ត្រូវបានដាក់នៅខាងក្នុងថ្នាក់តួអក្សរ [^ ] ដើម្បីផ្គូផ្គងតួអក្សរតែមួយដែលមិននៅក្នុងតង្កៀប។ + quantifier បង្ខំវាឱ្យចាត់ទុកតួអក្សរជាប់គ្នាជាការផ្គូផ្គងតែមួយ ដូច្នេះការជំនួសត្រូវបានធ្វើសម្រាប់ខ្សែអក្សររងដែលត្រូវគ្នាជាជាងសម្រាប់តួអក្សរនីមួយៗ។
អាស្រ័យលើតម្រូវការរបស់អ្នក សូមជ្រើសរើស regexes មួយខាងក្រោម។
ដើម្បីលុបតួអក្សរ ដែលមិនមែនជាអក្សរក្រមលេខ ពោលគឺតួអក្សរទាំងអស់លើកលែងតែអក្សរ និងលេខ៖
លំនាំ ៖ [^0-9a-zA-Z] +
ដើម្បីលុបតួអក្សរទាំងអស់ លើកលែងតែអក្សរ ខ្ទង់ និង ដកឃ្លា ៖
លំនាំ ៖ [^0-9a-zA-Z ]+
ដើម្បីលុបតួអក្សរទាំងអស់ លើកលែងតែអក្សរ , ខ្ទង់ និង គូសក្រោម អ្នកអាចប្រើ \ W ដែលតំណាងឱ្យតួអក្សរណាមួយដែលមិនមែនជាតួអក្សរអក្សរក្រមឬគូសបញ្ជាក់៖
លំនាំ ៖ \W+
ប្រសិនបើអ្នកចង់ រក្សាតួអក្សរផ្សេងទៀត ឧ. សញ្ញាវណ្ណយុត្តិ ដាក់ពួកវានៅខាងក្នុងតង្កៀប។
ឧទាហរណ៍ ដើម្បីដកតួអក្សរណាមួយក្រៅពីអក្សរ ខ្ទង់ លេខ សញ្ញាក្បៀស ឬដកឃ្លា ប្រើ regex ខាងក្រោម៖
Pattern : [^0-9a-zA-Z\., ]+
វាលុបបំបាត់តួអក្សរពិសេសទាំងអស់ដោយជោគជ័យ ប៉ុន្តែចន្លោះបន្ថែមនៅតែមាន។
ដើម្បីជួសជុលវា អ្នកអាចដាក់មុខងារខាងលើទៅក្នុងមួយផ្សេងទៀតដែលជំនួសចន្លោះច្រើនដោយតួអក្សរដកឃ្លាមួយ។
=RegExpReplace(RegExpReplace(A5,$A$2,""), " +", " ")
ឬគ្រាន់តែប្រើមុខងារ TRIM ដើមដែលមានឥទ្ធិពលដូចគ្នា :
=TRIM(RegExpReplace(A5, $A$2, ""))
Regex ដើម្បីលុបតួអក្សរដែលមិនមែនជាលេខ
ដើម្បីលុបតួអក្សរដែលមិនមែនជាលេខទាំងអស់ចេញពីខ្សែអក្សរ អ្នកអាចប្រើ ទាំងរូបមន្តដ៏វែងនេះ ឬ regexes សាមញ្ញបំផុតមួយដែលបានរាយខាងក្រោម។
ត្រូវគ្នានឹងតួអក្សរណាមួយដែលមិនមែនជាខ្ទង់៖
លំនាំ : \D+
ច្រូតតួអក្សរដែលមិនមែនជាលេខដោយប្រើថ្នាក់អវិជ្ជមាន៖
លំនាំ : [^0-9]+
លំនាំ : [^\d] +
គន្លឹះ។ ប្រសិនបើគោលដៅរបស់អ្នកគឺដើម្បីលុបអត្ថបទ ហើយកំពប់លេខដែលនៅសេសសល់ទៅក្នុងក្រឡាដាច់ដោយឡែក ឬដាក់វាទាំងអស់ក្នុងក្រឡាមួយដោយបំបែកដោយកំណត់ព្រំដែនដែលបានបញ្ជាក់ បន្ទាប់មកប្រើមុខងារ RegExpExtract ដូចដែលបានពន្យល់ក្នុងរបៀបស្រង់លេខចេញពីខ្សែអក្សរដោយប្រើកន្សោមធម្មតា។
Regex ដើម្បីលុបអ្វីគ្រប់យ៉ាងបន្ទាប់ពីដកឃ្លា
ដើម្បីលុបអ្វីៗទាំងអស់បន្ទាប់ពីដកឃ្លា សូមប្រើចន្លោះ ( ) ឬតួអក្សរដកឃ្លា (\s) ដើម្បីស្វែងរកដកឃ្លាដំបូង និង .* ដើម្បីផ្គូផ្គងតួអក្សរណាមួយបន្ទាប់ពីវា។
ប្រសិនបើអ្នកមានខ្សែបន្ទាត់តែមួយដែលមានតែចន្លោះធម្មតា (តម្លៃ 32 នៅក្នុងប្រព័ន្ធ ASCII 7 ប៊ីត) វាមិនសំខាន់ទេថាតើ regexes ខាងក្រោមណាមួយដែលអ្នកប្រើ។ ក្នុងករណីមានខ្សែច្រើនបន្ទាត់ វាមានភាពខុសគ្នា។
ដើម្បីលុបអ្វីៗទាំងអស់ បន្ទាប់ពីតួអក្សរដកឃ្លា សូមប្រើ regex នេះ៖
លំនាំ : " .*"
=RegExpReplace(A5, " .*", "")
រូបមន្តនេះនឹងដកអ្វីទាំងអស់បន្ទាប់ពីដកឃ្លាដំបូងក្នុង បន្ទាត់នីមួយៗ ។ ដើម្បីឱ្យលទ្ធផលបង្ហាញបានត្រឹមត្រូវ ត្រូវប្រាកដថាបើក Wrap Text ។
ដើម្បីលុបអ្វីៗទាំងអស់ បន្ទាប់ពីដកឃ្លា (រួមទាំងដកឃ្លា ផ្ទាំង ការបញ្ជូនត្រឡប់មកវិញ និងបន្ទាត់ថ្មី) regex គឺ៖
លំនាំ : \s.*
=RegExpReplace(A5, "\s.*", "")
ព្រោះ \s ត្រូវគ្នានឹងប្រភេទដកឃ្លាមួយចំនួន រួមទាំង បន្ទាត់ថ្មី (\n) រូបមន្តនេះលុបអ្វីៗទាំងអស់បន្ទាប់ពីដកឃ្លាដំបូងក្នុងក្រឡាមួយ មិនថាមានបន្ទាត់ប៉ុន្មាននៅក្នុងនោះ។
Regex ដើម្បីលុបអត្ថបទបន្ទាប់ពីជាក់លាក់ តួអក្សរ
ដោយប្រើវិធីសាស្រ្តពីឧទាហរណ៍មុន អ្នកអាចលុបអត្ថបទបន្ទាប់ពីតួអក្សរណាមួយដែលអ្នកបញ្ជាក់។
ដើម្បីដោះស្រាយបន្ទាត់នីមួយៗដោយឡែកពីគ្នា៖
លំនាំទូទៅ : char.*
នៅក្នុងខ្សែបន្ទាត់តែមួយ វានឹងលុបអ្វីៗទាំងអស់បន្ទាប់ពី char ។ នៅក្នុងខ្សែអក្សរច្រើនបន្ទាត់ បន្ទាត់នីមួយៗនឹងត្រូវបានដំណើរការដោយឡែកៗពីគ្នា ពីព្រោះនៅក្នុងរសជាតិ VBA Regex រយៈពេល (.) ត្រូវគ្នានឹងតួអក្សរណាមួយ លើកលែងតែថ្មីការចាប់ផ្តើមនៃខ្សែអក្សរ ^ យើងផ្គូផ្គងលេខសូន្យ ឬច្រើនតួអក្សរដែលមិនដកឃ្លា [^ ]* ដែលត្រូវបានធ្វើតាមភ្លាមៗដោយដកឃ្លាមួយ ឬច្រើន " +" ។ ផ្នែកចុងក្រោយត្រូវបានបន្ថែមដើម្បីការពារចន្លោះនាំមុខដែលមានសក្តានុពលនៅក្នុងលទ្ធផល។
ដើម្បីលុបអត្ថបទមុនពេលដកឃ្លាដំបូងក្នុងបន្ទាត់នីមួយៗ រូបមន្តត្រូវបានសរសេរក្នុងរបៀប "ការផ្គូផ្គងទាំងអស់" លំនាំដើម ( instance_num បានលុបចោល)៖
=RegExpReplace(A5, "^[^ ]* +", "")
ដើម្បីលុបអត្ថបទមុនចន្លោះទីមួយក្នុងជួរទីមួយ ហើយទុកបន្ទាត់ផ្សេងទៀតទាំងអស់នៅដដែល អាគុយម៉ង់ instance_num ត្រូវបានកំណត់ទៅជា 1:
=RegExpReplace(A5, "^[^ ]* +", "", 1)
Regex ដើម្បីលុបអ្វីៗទាំងអស់នៅពីមុខតួអក្សរ
វិធីងាយស្រួលបំផុតដើម្បីលុបអត្ថបទទាំងអស់មុនពេលតួអក្សរជាក់លាក់មួយគឺដោយប្រើ regex ដូចនេះ៖
លំនាំទូទៅ ៖ ^[^char]*char
បានបកប្រែជាភាសាមនុស្ស វានិយាយថា៖ "ចាប់ពីការចាប់ផ្តើមនៃខ្សែអក្សរដែលបានបោះយុថ្កាដោយ ^ ផ្គូផ្គងតួអក្សរ 0 ឬច្រើនជាងនេះ លើកលែងតែ char [^char]* រហូតដល់ការកើតឡើងដំបូងនៃ char ។
ឧទាហរណ៍ ដើម្បីលុបអត្ថបទទាំងអស់នៅពីមុខសញ្ញាដំបូង។ ប្រើកន្សោមធម្មតានេះ៖
លំនាំ : ^[^:]*:
ដើម្បីជៀសវាងចន្លោះនាំមុខនៅក្នុងលទ្ធផល សូមបន្ថែមតួអក្សរដកឃ្លា \s* ទៅ បញ្ចប់។ វានឹងលុបអ្វីៗទាំងអស់។ g នៅពីមុខពោះវៀនធំទីមួយ ហើយកាត់ចន្លោះណាមួយភ្លាមៗបន្ទាប់ពីវា៖
លំនាំ : ^[^:]*:\s*
=RegExpReplace(A5, "^[^:]*:\s*", "")
គន្លឹះ។ ក្រៅពីកន្សោមធម្មតា Excel មានមធ្យោបាយផ្ទាល់ខ្លួនដើម្បីលុបអត្ថបទដោយទីតាំងឬផ្គូផ្គង។ ដើម្បីរៀនពីរបៀបដើម្បីសម្រេចកិច្ចការជាមួយនឹងរូបមន្តដើម,សូមមើល របៀបលុបអត្ថបទមុន ឬក្រោយតួអក្សរក្នុង Excel ។
Regex ដើម្បីលុបអ្វីៗទាំងអស់លើកលែងតែ
ដើម្បីលុបតួអក្សរទាំងអស់ចេញពីខ្សែអក្សរ លើកលែងតែអក្សរដែលអ្នកចង់រក្សាទុក សូមប្រើថ្នាក់តួអក្សរអវិជ្ជមាន។
ឧទាហរណ៍ ដើម្បីលុបតួអក្សរទាំងអស់លើកលែងតែអក្សរតូច និងចំនុច regex គឺ៖
លំនាំ : [^a-z\.]+
តាមពិត យើងអាចធ្វើដោយគ្មាន + quantifier នៅទីនេះ ព្រោះមុខងាររបស់យើងជំនួសទាំងអស់ បានរកឃើញការប្រកួត។ បរិមាណគ្រាន់តែធ្វើឱ្យវាលឿនជាងមុនបន្តិច - ជំនួសឱ្យការដោះស្រាយតួអក្សរនីមួយៗ អ្នកជំនួសខ្សែអក្សររងមួយ។
=RegExpReplace(A5, "[^a-z\.]+", "")
Regex ដើម្បីលុបស្លាក html នៅក្នុង Excel
ជាដំបូង វាគួរតែត្រូវបានកត់សម្គាល់ថា HTML មិនមែនជាភាសាធម្មតាទេ ដូច្នេះការញែកវាដោយប្រើកន្សោមធម្មតាមិនមែនជាវិធីល្អបំផុតនោះទេ។ ដែលបាននិយាយថា regexes ពិតជាអាចជួយដកស្លាកចេញពីក្រឡារបស់អ្នក ដើម្បីធ្វើឱ្យសំណុំទិន្នន័យរបស់អ្នកស្អាតជាងមុន។
ដោយសារថាស្លាក html តែងតែត្រូវបានដាក់ក្នុងតង្កៀបមុំ អ្នកអាចស្វែងរកពួកវាដោយប្រើ regexes មួយក្នុងចំណោម regexes ខាងក្រោម។
ថ្នាក់អវិជ្ជមាន៖
លំនាំ : ]*>
នៅទីនេះ យើងផ្គូផ្គងតង្កៀបមុំបើក អមដោយសូន្យ ឬច្រើនកើតឡើងនៃតួអក្សរណាមួយ លើកលែងតែ តង្កៀបមុំបិទ [^>]* រហូតដល់តង្កៀបមុំបិទជិតបំផុត។
ការស្វែងរកខ្ជិល៖
លំនាំ ៖
នៅទីនេះ យើងផ្គូផ្គង អ្វីទាំងអស់ពីតង្កៀបបើកដំបូងទៅតង្កៀបបិទដំបូង។ សញ្ញាសួរបង្ខំ .* ដើម្បីផ្គូផ្គងតួអក្សរពីរបីដូចបន្ទាត់។
ដើម្បីដំណើរការបន្ទាត់ទាំងអស់ជាខ្សែតែមួយ៖
លំនាំទូទៅ ៖ char.