Regex ដើម្បីលុបតួអក្សរ ឬអត្ថបទមួយចំនួននៅក្នុង Excel

  • ចែករំលែកនេះ។
Michael Brown
អាគុយម៉ង់ត្រូវបានលុបចោល ការផ្គូផ្គងដែលបានរកឃើញទាំងអស់ត្រូវបានដកចេញ។ ដើម្បីលុបការផ្គូផ្គងជាក់លាក់ កំណត់លេខឧទាហរណ៍។

នៅក្នុងខ្សែអក្សរខាងក្រោម ឧបមាថាអ្នកចង់លុបលេខលំដាប់ទីមួយ។ លេខ​ទាំង​អស់​នេះ​ចាប់​ផ្ដើម​ដោយ​សញ្ញា​សញ្ញា (#) ហើយ​មាន 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 និងបំបែកអត្ថបទដែលនៅសល់ដោយដកឃ្លា អ្នកអាចបន្តតាមវិធីនេះ៖

  1. ជំនួសស្លាកដោយដកឃ្លា " " មិនមែនខ្សែអក្សរទទេទេ៖

    =RegExpReplace(A5, "]*>", " ")

  2. កាត់បន្ថយចន្លោះច្រើនទៅជាតួអក្សរដកឃ្លាតែមួយ៖

    =RegExpReplace(RegExpReplace(A5, "]*>", " "), " +", " ")

  3. កាត់បន្ថយចន្លោះនាំមុខ និងនៅពីក្រោយ៖

    =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)

នៅក្នុង។
  • លំនាំ - កន្សោមធម្មតាដែលត្រូវស្វែងរក។
  • ការជំនួស - អត្ថបទដែលត្រូវជំនួស។ ដើម្បី ដកខ្សែអក្សររងចេញ ដែលផ្គូផ្គងនឹងលំនាំ សូមប្រើ ខ្សែអក្សរទទេ ("") សម្រាប់ការជំនួស។ ជំនួស។ ប្រសិនបើលុបចោល ការផ្គូផ្គងដែលបានរកឃើញទាំងអស់ត្រូវបានជំនួស (លំនាំដើម។ សម្រាប់ការផ្គូផ្គងអក្សរតូចធំ សូមប្រើ TRUE (លំនាំដើម); សម្រាប់ case-insensitive - FALSE។
  • សម្រាប់ព័ត៌មានបន្ថែម សូមមើលមុខងារ 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.

    ម៉ៃឃើល ប្រោន ជា​អ្នក​ចូល​ចិត្ត​ផ្នែក​បច្ចេកវិទ្យា​ដែល​មាន​ចំណង់​ចំណូល​ចិត្ត​ក្នុង​ការ​សម្រួល​ដំណើរការ​ស្មុគស្មាញ​ដោយ​ប្រើ​ឧបករណ៍​កម្មវិធី។ ជាមួយនឹងបទពិសោធន៍ជាងមួយទស្សវត្សនៅក្នុងឧស្សាហកម្មបច្ចេកវិទ្យា គាត់បានពង្រឹងជំនាញរបស់គាត់នៅក្នុង Microsoft Excel និង Outlook ក៏ដូចជា Google Sheets និង Docs ។ ប្លក់របស់ម៉ៃឃើលគឺឧទ្ទិសដល់ការចែករំលែកចំណេះដឹង និងជំនាញរបស់គាត់ជាមួយអ្នកដទៃ ដោយផ្តល់នូវគន្លឹះ និងមេរៀនដែលងាយស្រួលធ្វើតាមសម្រាប់ការកែលម្អផលិតភាព និងប្រសិទ្ធភាព។ មិនថាអ្នកជាអ្នកជំនាញ ឬអ្នកចាប់ផ្តើមដំបូងទេ ប្លក់របស់ Michael ផ្តល់នូវការយល់ដឹងដ៏មានតម្លៃ និងដំបូន្មានជាក់ស្តែងសម្រាប់ការទទួលបានអត្ថប្រយោជន៍ច្រើនបំផុតពីឧបករណ៍កម្មវិធីសំខាន់ៗទាំងនេះ។