មាតិកា
កិច្ចការមួយក្នុងចំណោមកិច្ចការដែលចំណាយពេល និងខកចិត្តបំផុតនៅពេលធ្វើការជាមួយអត្ថបទក្នុង Excel គឺ ញែក - ញែក "បបរ" អក្សរក្រមលេខទៅជាសមាសធាតុ និងទាញយកបំណែកដែលយើងត្រូវការពីវា។ ឧទាហរណ៍:
- ទាញយកកូដហ្ស៊ីបពីអាសយដ្ឋាន (វាល្អប្រសិនបើលេខកូដហ្ស៊ីបតែងតែនៅដើមដំបូង ប៉ុន្តែចុះយ៉ាងណាបើវាមិនមែន?)
- ការស្វែងរកលេខ និងកាលបរិច្ឆេទនៃវិក្កយបត្រពីការពិពណ៌នានៃការទូទាត់នៅក្នុងរបាយការណ៍ធនាគារ
- ការទាញយក TIN ពីការពិពណ៌នា motley របស់ក្រុមហ៊ុននៅក្នុងបញ្ជីដៃគូ
- ស្វែងរកលេខរថយន្ត ឬលេខអត្ថបទនៅក្នុងការពិពណ៌នា។ល។
ជាធម្មតានៅក្នុងករណីបែបនេះ បន្ទាប់ពីពាក់កណ្តាលម៉ោងនៃការជ្រើសរើសអត្ថបទដែលគួរឱ្យខ្លាចនៅក្នុងសៀវភៅដោយដៃ គំនិតចាប់ផ្តើមគិតពីរបៀបធ្វើស្វ័យប្រវត្តិកម្មដំណើរការនេះ (ជាពិសេសប្រសិនបើមានទិន្នន័យច្រើន)។ មានដំណោះស្រាយជាច្រើន ហើយជាមួយនឹងកម្រិតខុសគ្នានៃភាពស្មុគស្មាញ-ប្រសិទ្ធភាព៖
- ការប្រើ មុខងារអត្ថបទ Excel ដែលភ្ជាប់មកជាមួយ ដើម្បីស្វែងរកអត្ថបទ កាត់-កាវ៖ LEVSIMV (ខាងឆ្វេង), សិទ្ធិ (ត្រឹមត្រូវ), ភី (ពាក់កណ្តាល), STsEPIT (ភ្ជាប់) និង analogues របស់វា។, COMBINE ។ (JOINTEXT), ជាក់ស្តែង (ពិតប្រាកដ) ល។ វិធីសាស្ត្រនេះគឺល្អប្រសិនបើមានតក្កវិជ្ជាច្បាស់លាស់នៅក្នុងអត្ថបទ (ឧទាហរណ៍ លិបិក្រមតែងតែនៅដើមអាសយដ្ឋាន)។ បើមិនដូច្នេះទេ រូបមន្តកាន់តែស្មុគស្មាញ ហើយជួនកាលវាឈានដល់រូបមន្តអារេ ដែលបន្ថយល្បឿនយ៉ាងខ្លាំងនៅលើតារាងធំ។
- ការប្រើ ដូចជាប្រតិបត្តិករភាពស្រដៀងគ្នាអត្ថបទ ពី Visual Basic រុំក្នុងមុខងារម៉ាក្រូផ្ទាល់ខ្លួន។ នេះអនុញ្ញាតឱ្យអ្នកអនុវត្តការស្វែងរកដែលអាចបត់បែនបានដោយប្រើតួអក្សរជំនួស (*, #,?, etc.) ជាអកុសល ឧបករណ៍នេះមិនអាចស្រង់ខ្សែអក្សររងដែលចង់បានចេញពីអត្ថបទបានទេ - ពិនិត្យមើលថាតើវាមាននៅក្នុងវាឬអត់។
បន្ថែមពីលើចំណុចខាងលើ មានវិធីសាស្រ្តមួយផ្សេងទៀតដែលត្រូវបានគេស្គាល់យ៉ាងច្បាស់នៅក្នុងរង្វង់តូចចង្អៀតនៃអ្នកសរសេរកម្មវិធីដែលមានជំនាញវិជ្ជាជីវៈ អ្នកបង្កើតគេហទំព័រ និងបច្ចេកវិទ្យាផ្សេងទៀត - នេះគឺជា កន្សោមធម្មតា (កន្សោមធម្មតា = RegExp = "regexps" = "ទៀងទាត់") ។ និយាយដោយសាមញ្ញថា RegExp គឺជាភាសាដែលតួអក្សរ និងច្បាប់ពិសេសត្រូវបានប្រើដើម្បីស្វែងរកខ្សែអក្សររងចាំបាច់នៅក្នុងអត្ថបទ ស្រង់ពួកវា ឬជំនួសពួកវាដោយអត្ថបទផ្សេងទៀត. កន្សោមធម្មតាគឺជាឧបករណ៍ដ៏មានឥទ្ធិពល និងស្រស់ស្អាតដែលលើសពីវិធីផ្សេងទៀតទាំងអស់នៃការធ្វើការជាមួយអត្ថបទដោយលំដាប់នៃរ៉ិចទ័រ។ ភាសាសរសេរកម្មវិធីជាច្រើន (C#, PHP, Perl, JavaScript…) និងកម្មវិធីនិពន្ធអត្ថបទ (Word, Notepad ++…) គាំទ្រកន្សោមធម្មតា។
ជាអកុសល Microsoft Excel មិនមានការគាំទ្រ RegExp ចេញពីប្រអប់នោះទេប៉ុន្តែវាអាចត្រូវបានជួសជុលយ៉ាងងាយស្រួលជាមួយ VBA ។ បើកកម្មវិធីនិពន្ធ Visual Basic ពីផ្ទាំង អ្នកអភិវឌ្ឍ (អ្នកអភិវឌ្ឍន៍) ឬផ្លូវកាត់ក្តារចុច alt+F11. បន្ទាប់មកបញ្ចូលម៉ូឌុលថ្មីតាមរយៈម៉ឺនុយ បញ្ចូល - ម៉ូឌុល ហើយចម្លងអត្ថបទនៃមុខងារម៉ាក្រូខាងក្រោមនៅទីនោះ៖
មុខងារសាធារណៈ RegExpExtract(Text As String, Pattern As String, ជម្រើសធាតុជាចំនួនគត់ = 1) As String On Error GoTo ErrHandl Set regex = CreateObject("VBScript.RegExp") regex.Pattern = Pattern regex.Global = True ប្រសិនបើ regex.Test (អត្ថបទ) បន្ទាប់មកកំណត់ការផ្គូផ្គង = regex.Execute(Text) RegExpExtract = matches.Item(Item - 1) Exit Function End ប្រសិនបើ ErrHandl: RegExpExtract = CVErr(xlErrValue) End Function
ឥឡូវនេះ យើងអាចបិទ Visual Basic Editor ហើយត្រឡប់ទៅ Excel ដើម្បីសាកល្បងមុខងារថ្មីរបស់យើង។ វាក្យសម្ព័ន្ធរបស់វាមានដូចខាងក្រោម៖
=RegExpExtract(txt; លំនាំ; ធាតុ)
ដែលជាកន្លែងដែល
- txt – ក្រឡាមួយដែលមានអត្ថបទដែលយើងកំពុងពិនិត្យ និងពីការដែលយើងចង់ទាញយក substring ដែលយើងត្រូវការ
- លំនាំ - របាំង (លំនាំ) សម្រាប់ការស្វែងរកខ្សែអក្សររង
- ធាតុ - លេខលំដាប់នៃខ្សែអក្សររងដែលត្រូវដកចេញ បើមានច្រើនក្នុងចំណោមនោះ (ប្រសិនបើមិនបានបញ្ជាក់ នោះការកើតឡើងដំបូងនឹងត្រូវបានបង្ហាញ)
អ្វីដែលគួរឱ្យចាប់អារម្មណ៍បំផុតនៅទីនេះគឺ លំនាំ ដែលជាខ្សែអក្សរគំរូនៃតួអក្សរពិសេស "ជាភាសា" របស់ RegExp ដែលបញ្ជាក់ពីអ្វីដែលពិតប្រាកដ និងកន្លែងដែលយើងចង់ស្វែងរក។ នេះជាចំណុចមូលដ្ឋានបំផុតដើម្បីឱ្យអ្នកចាប់ផ្ដើម៖
លំនាំ | ការពិពណ៌នា |
. | សាមញ្ញបំផុតគឺចំណុច។ វាផ្គូផ្គងតួអក្សរណាមួយនៅក្នុងលំនាំនៅទីតាំងដែលបានបញ្ជាក់។ |
s | តួអក្សរណាមួយដែលមើលទៅដូចជាដកឃ្លា (ដកឃ្លា ផ្ទាំង ឬបន្ទាត់បំបែក)។ |
S | វ៉ារ្យ៉ង់ប្រឆាំងនៃលំនាំមុន ពោលគឺ តួអក្សរដែលមិនមានចន្លោះពណ៌ស។ |
d | លេខណាមួយ |
D | ការប្រឆាំងវ៉ារ្យ៉ង់នៃលេខមុន ពោលគឺលេខណាដែលមិនមែនជាលេខ |
w | អក្សរឡាតាំងណាមួយ (AZ) ខ្ទង់ ឬគូសគូស |
W | វ៉ារ្យ៉ង់ប្រឆាំងនៃកំណែមុន ពោលគឺមិនមែនឡាតាំង មិនមែនជាលេខ និងមិនមែនជាសញ្ញាគូសក្រោម។ |
[តួអក្សរ] | ក្នុងតង្កៀបការ៉េ អ្នកអាចបញ្ជាក់តួអក្សរមួយ ឬច្រើនដែលអនុញ្ញាតនៅទីតាំងដែលបានបញ្ជាក់ក្នុងអត្ថបទ។ ឧទាហរណ៍ សិល្បៈ នឹងផ្គូផ្គងពាក្យណាមួយ៖ តារាង or ប្រធាន. អ្នកក៏មិនអាចរាប់បញ្ចូលតួអក្សរបានដែរ ប៉ុន្តែកំណត់ពួកវាជាជួរដែលបំបែកដោយសហសញ្ញា ពោលគឺជំនួសឱ្យ [ABDCDEF] សរសេរ [AF]. ឬជំនួសវិញ។ [4567] ណែនាំ [-៤ ៧]. ឧទាហរណ៍ ដើម្បីកំណត់តួអក្សរ Cyrillic ទាំងអស់ អ្នកអាចប្រើពុម្ព [a-yaA-YayoYo]. |
[^តួអក្សរ] | ប្រសិនបើបន្ទាប់ពីបើកតង្កៀបការ៉េបន្ថែមនិមិត្តសញ្ញា "គំរប" ^បន្ទាប់មកសំណុំនឹងទទួលបានអត្ថន័យផ្ទុយ – នៅទីតាំងដែលបានបញ្ជាក់នៅក្នុងអត្ថបទ តួអក្សរទាំងអស់នឹងត្រូវបានអនុញ្ញាត លើកលែងតែសម្រាប់អ្នកដែលបានរាយបញ្ជី។ បាទ គំរូ [^ЖМ] ut នឹងស្វែងរក ផ្លូវ or សារធាតុ or ភ្លេចប៉ុន្តែមិនមែនទេ គួរឱ្យខ្លាច or មុត, ឧ។ |
| | ប្រតិបត្តិករប៊ូលីន OR (ឬ) ដើម្បីពិនិត្យមើលលក្ខណៈវិនិច្ឆ័យណាមួយដែលបានបញ្ជាក់។ ឧទាហរណ៍ (ពីធូ|សeven|វិក្កយបត្រ) នឹងស្វែងរកអត្ថបទសម្រាប់ពាក្យណាមួយដែលបានបញ្ជាក់។ ជាធម្មតា សំណុំនៃជម្រើសត្រូវបានរុំព័ទ្ធក្នុងវង់ក្រចក។ |
^ | ការចាប់ផ្តើមនៃបន្ទាត់ |
$ | ចុងបញ្ចប់នៃបន្ទាត់ |
b | ចុងបញ្ចប់នៃពាក្យ |
ប្រសិនបើយើងកំពុងស្វែងរកចំនួនតួអក្សរជាក់លាក់ ឧទាហរណ៍ លេខកូដប្រៃសណីយ៍ ប្រាំមួយខ្ទង់ ឬលេខកូដផលិតផលដែលមានអក្សរបី នោះយើងមកជួយសង្គ្រោះ បរិមាណ or បរិមាណ គឺជាកន្សោមពិសេសដែលបញ្ជាក់ចំនួនតួអក្សរដែលត្រូវស្វែងរក។ Quantifiers ត្រូវបានអនុវត្តចំពោះតួអក្សរដែលមកមុនវា៖
Quantor | ការពិពណ៌នា |
? | សូន្យ ឬមួយកើតឡើង។ ឧទាហរណ៍ .? នឹងមានន័យថាតួអក្សរណាមួយឬអវត្តមានរបស់វា។ |
+ | ធាតុមួយ ឬច្រើន។ ឧទាហរណ៍ d+ មានន័យថាចំនួនខ្ទង់ណាមួយ (ឧទាហរណ៍លេខណាមួយរវាង 0 និងគ្មានកំណត់)។ |
* | សូន្យ ឬច្រើនកើតឡើង ពោលគឺបរិមាណណាមួយ។ ដូច្នេះ s* មានន័យថាចំនួនចន្លោះ ឬគ្មានចន្លោះ។ |
{លេខ} or {លេខ ២,លេខ ២} | ប្រសិនបើអ្នកត្រូវការបញ្ជាក់ចំនួនដែលបានកំណត់យ៉ាងតឹងរ៉ឹង នោះវាត្រូវបានបញ្ជាក់នៅក្នុងដង្កៀបអង្កាញ់។ ឧទាហរណ៍ ឃ{6} មានន័យថា ប្រាំមួយខ្ទង់យ៉ាងតឹងរ៉ឹង និងលំនាំ ស{2,5} - ចន្លោះពីរទៅប្រាំ |
ឥឡូវនេះសូមបន្តទៅផ្នែកដែលគួរឱ្យចាប់អារម្មណ៍បំផុត - ការវិភាគនៃការអនុវត្តមុខងារដែលបានបង្កើតនិងអ្វីដែលយើងបានរៀនអំពីគំរូលើឧទាហរណ៍ជាក់ស្តែងពីជីវិត។
ការដកលេខចេញពីអត្ថបទ
ដើម្បីចាប់ផ្តើម ចូរយើងវិភាគករណីសាមញ្ញមួយ - អ្នកត្រូវដកលេខទីមួយចេញពីបបរអក្សរលេខ ឧទាហរណ៍ ថាមពលនៃការផ្គត់ផ្គង់ថាមពលដែលមិនអាចរំខានបានពីបញ្ជីតម្លៃ៖
តក្កវិជ្ជានៅពីក្រោយកន្សោមធម្មតាគឺសាមញ្ញ៖ d មានន័យថាលេខណាមួយ និងបរិមាណ + និយាយថាលេខរបស់ពួកគេគួរតែមានមួយ ឬច្រើន។ ដកពីរដងនៅពីមុខមុខងារគឺត្រូវការដើម្បី "រហ័ស" បំប្លែងតួអក្សរដែលបានស្រង់ចេញទៅជាលេខពេញពីលេខដូចអត្ថបទ។
លេខកូដប្រៃសណីយ៍
នៅ glance ដំបូង អ្វីគ្រប់យ៉ាងគឺសាមញ្ញនៅទីនេះ - យើងកំពុងស្វែងរកចំនួនប្រាំមួយខ្ទង់ជាប់ៗគ្នា។ យើងប្រើតួអក្សរពិសេស d សម្រាប់លេខ និងបរិមាណ 6 {} សម្រាប់ចំនួនតួអក្សរ៖
ទោះយ៉ាងណាក៏ដោយ ស្ថានភាពមួយអាចធ្វើទៅបាននៅពេលដែលនៅខាងឆ្វេងនៃសន្ទស្សន៍ក្នុងបន្ទាត់ មានលេខធំមួយទៀតនៅក្នុងជួរ (លេខទូរស័ព្ទ TIN គណនីធនាគារ។ល។) បន្ទាប់មករដូវធម្មតារបស់យើងនឹងដកលេខ 6 ដំបូង។ លេខពីវា ពោលគឺនឹងមិនដំណើរការត្រឹមត្រូវទេ៖
ដើម្បីទប់ស្កាត់កុំឱ្យវាកើតឡើង យើងត្រូវបន្ថែមកម្មវិធីកែប្រែជុំវិញគែមនៃកន្សោមធម្មតារបស់យើង។ b មានន័យថាចុងបញ្ចប់នៃពាក្យ។ នេះនឹងធ្វើឱ្យវាច្បាស់ដល់ Excel ថាបំណែក (លិបិក្រម) ដែលយើងត្រូវការគួរតែជាពាក្យដាច់ដោយឡែក ហើយមិនមែនជាផ្នែកនៃបំណែកផ្សេងទៀត (លេខទូរស័ព្ទ)៖
ទូរស័ព្ទ
បញ្ហាជាមួយនឹងការស្វែងរកលេខទូរស័ព្ទនៅក្នុងអត្ថបទគឺថាមានជម្រើសជាច្រើនសម្រាប់ការសរសេរលេខ - ដោយមាន និងគ្មានសញ្ញាសហសញ្ញា តាមរយៈដកឃ្លា ដោយមាន ឬគ្មានលេខកូដតំបន់នៅក្នុងតង្កៀប។ល។ ជាដំបូងសម្អាតតួអក្សរទាំងនេះចេញពីអត្ថបទប្រភពដោយប្រើមុខងារជាច្រើនដែលភ្ជាប់មកជាមួយ រង (ជំនួស)ដូច្នេះវានៅជាប់គ្នាជាមួយទាំងមូល ហើយបន្ទាប់មកជាមួយនឹងភាពទៀងទាត់បឋម ឃ{11} ទាញចេញ ១១ ខ្ទង់ជាប់គ្នា៖
អាយធីអិន
វាមានភាពស្មុគស្មាញបន្តិចនៅទីនេះ ពីព្រោះ TIN (នៅក្នុងប្រទេសរបស់យើង) អាចជា 10 ខ្ទង់ (សម្រាប់នីតិបុគ្គល) ឬ 12 ខ្ទង់ (សម្រាប់បុគ្គល)។ ប្រសិនបើអ្នកមិនរកឃើញកំហុសជាពិសេសនោះវាពិតជាអាចទៅរួចក្នុងការពេញចិត្តនឹងភាពទៀងទាត់ ឃ{10,12}ប៉ុន្តែនិយាយយ៉ាងតឹងរ៉ឹង វានឹងដកលេខទាំងអស់ចេញពី 10 ទៅ 12 តួអក្សរ ពោលគឺ ហើយបញ្ចូលលេខ 11 ខ្ទង់ខុស។ វានឹងជាការត្រឹមត្រូវជាងក្នុងការប្រើលំនាំពីរដែលតភ្ជាប់ដោយប្រតិបត្តិករឡូជីខល OR | (របារបញ្ឈរ)៖
សូមចំណាំថានៅក្នុងសំណួរដំបូងយើងរកមើលលេខ 12 ប៊ីត ហើយមានតែលេខ 10 ប៊ីតប៉ុណ្ណោះ។ ប្រសិនបើយើងសរសេរកន្សោមធម្មតារបស់យើងតាមវិធីផ្សេងទៀត នោះវានឹងទាញចេញសម្រាប់អ្នករាល់គ្នា សូម្បីតែ TIN វែង 12 ប៊ីត មានតែតួអក្សរ 10 ដំបូងប៉ុណ្ណោះ។ នោះគឺបន្ទាប់ពីលក្ខខណ្ឌទីមួយត្រូវបានបង្កឡើង ការផ្ទៀងផ្ទាត់បន្ថែមមិនត្រូវបានអនុវត្តទៀតទេ៖
នេះគឺជាភាពខុសគ្នាជាមូលដ្ឋានរវាងប្រតិបត្តិករ | ពីអនុគមន៍តក្កវិជ្ជា Excel ស្តង់ដារ OR (ឬ)ដែលជាកន្លែងដែលការរៀបចំអាគុយម៉ង់ឡើងវិញមិនផ្លាស់ប្តូរលទ្ធផល។
ផលិតផលអេសប៊ីអេស
នៅក្នុងក្រុមហ៊ុនជាច្រើន ឧបករណ៍កំណត់អត្តសញ្ញាណតែមួយគត់ត្រូវបានចាត់ចែងលើទំនិញ និងសេវាកម្ម – អត្ថបទ កូដ SAP SKUs ។ ឧទាហរណ៍ ប្រសិនបើយើងដឹងថាអត្ថបទរបស់យើងតែងតែមានអក្សរធំបីជាភាសាអង់គ្លេស សហសញ្ញា និងលេខបីខ្ទង់បន្តបន្ទាប់គ្នានោះ៖
តក្កវិជ្ជានៅពីក្រោយគំរូគឺសាមញ្ញ។ [AZ] - មានន័យថាអក្សរធំណាមួយនៃអក្ខរក្រមឡាតាំង។ អ្នកកំណត់បរិមាណបន្ទាប់ 3 {} និយាយថាវាសំខាន់សម្រាប់យើងដែលមានអក្សរបីយ៉ាងពិតប្រាកដ។ បន្ទាប់ពីសហសញ្ញា យើងកំពុងរង់ចាំបីខ្ទង់ ដូច្នេះយើងបន្ថែមនៅចុងបញ្ចប់ ឃ{3}
ចំនួនសាច់ប្រាក់
តាមរបៀបស្រដៀងគ្នាទៅនឹងកថាខណ្ឌមុន អ្នកក៏អាចដកតម្លៃ (ថ្លៃដើម អាករលើតម្លៃបន្ថែម ...) ពីការពិពណ៌នាអំពីទំនិញ។ ឧទាហរណ៍ ប្រសិនបើចំនួនរូបិយវត្ថុត្រូវបានចង្អុលបង្ហាញដោយសញ្ញាសហសញ្ញា នោះ៖
លំនាំ d ជាមួយ quantifier + ស្វែងរកលេខណាមួយរហូតដល់សហសញ្ញា និង ឃ{2} នឹងរកមើលកាក់ (ពីរខ្ទង់) បន្ទាប់ពី។
ប្រសិនបើអ្នកត្រូវការស្រង់ចេញមិនមែនតម្លៃទេ ប៉ុន្តែអាករលើតម្លៃបន្ថែម នោះអ្នកអាចប្រើអាគុយម៉ង់ជាជម្រើសទីបីនៃមុខងារ RegExpExtract របស់យើង ដែលបញ្ជាក់លេខធម្មតានៃធាតុដែលត្រូវស្រង់ចេញ។ ហើយជាការពិតអ្នកអាចជំនួសមុខងារ រង (ជំនួស) នៅក្នុងលទ្ធផល សូមដាក់សហសញ្ញាទៅសញ្ញាបំបែកទសភាគស្តង់ដារ ហើយបន្ថែមដកពីរដងនៅដើម ដូច្នេះ Excel បកស្រាយ VAT ដែលបានរកឃើញជាលេខធម្មតា៖
ស្លាកលេខរថយន្ត
ប្រសិនបើអ្នកមិនយកយានជំនិះពិសេស សណ្តោងរ៉ឺម៉ក និងម៉ូតូផ្សេងទៀតទេ នោះលេខរថយន្តស្តង់ដារត្រូវបានញែកតាមគោលការណ៍ "អក្សរ - លេខបី - អក្សរពីរ - លេខកូដតំបន់" ។ លើសពីនេះទៅទៀត លេខកូដតំបន់អាចជា 2 ឬ 3 ខ្ទង់ ហើយមានតែអក្សរដែលស្រដៀងនឹងអក្សរឡាតាំងប៉ុណ្ណោះដែលត្រូវបានប្រើជាអក្សរ។ ដូច្នេះ កន្សោមធម្មតាខាងក្រោមនឹងជួយយើងក្នុងការស្រង់លេខចេញពីអត្ថបទ៖
ពេលវេលា
ដើម្បីស្រង់ពេលវេលាក្នុងទម្រង់ HH:MM កន្សោមធម្មតាខាងក្រោមគឺសមរម្យ៖
បន្ទាប់ពីបំណែកពោះវៀនធំ [0-5] ឃដូចដែលវាងាយស្រួលគិត កំណត់លេខណាមួយក្នុងចន្លោះ 00-59។ មុនពេលពោះវៀនធំក្នុងវង់ក្រចក លំនាំពីរដំណើរការដោយបំបែកដោយឡូជីខល OR (បំពង់)៖
- [0-1] ឃ - លេខណាមួយនៅក្នុងជួរ 00-19
- 2[0-3] - លេខណាមួយនៅក្នុងជួរ 20-23
ចំពោះលទ្ធផលដែលទទួលបាន អ្នកអាចបន្ថែមមុខងារ Excel ស្តង់ដារ TIME (ក្រុម)ដើម្បីបម្លែងវាទៅជាទម្រង់ពេលវេលាដែលអាចយល់បានចំពោះកម្មវិធី និងសមរម្យសម្រាប់ការគណនាបន្ថែមទៀត។
ពិនិត្យពាក្យសម្ងាត់
ឧបមាថាយើងត្រូវពិនិត្យមើលបញ្ជីពាក្យសម្ងាត់ដែលបង្កើតដោយអ្នកប្រើប្រាស់សម្រាប់ភាពត្រឹមត្រូវ។ យោងតាមច្បាប់របស់យើង ពាក្យសម្ងាត់អាចមានតែអក្សរអង់គ្លេស (អក្សរតូច ឬអក្សរធំ) និងលេខប៉ុណ្ណោះ។ ដកឃ្លា សញ្ញាចុច និងសញ្ញាវណ្ណយុត្តិផ្សេងទៀតមិនត្រូវបានអនុញ្ញាតទេ។
ការត្រួតពិនិត្យអាចត្រូវបានរៀបចំដោយប្រើកន្សោមធម្មតាសាមញ្ញខាងក្រោម៖
តាមពិតទៅតាមលំនាំបែបនេះ យើងទាមទារថានៅចន្លោះពេលចាប់ផ្ដើម (^) និងបញ្ចប់ ($) នៅក្នុងអត្ថបទរបស់យើងមានតែតួអក្សរពីសំណុំដែលបានផ្តល់ឱ្យក្នុងតង្កៀបការ៉េ។ ប្រសិនបើអ្នកក៏ត្រូវពិនិត្យមើលប្រវែងនៃពាក្យសម្ងាត់ (ឧទាហរណ៍យ៉ាងហោចណាស់ 6 តួអក្សរ) បន្ទាប់មកអ្នកកំណត់បរិមាណ + អាចត្រូវបានជំនួសដោយចន្លោះពេល "ប្រាំមួយឬច្រើន" នៅក្នុងទម្រង់ {១,}:
ទីក្រុងពីអាសយដ្ឋាន
ឧបមាថាយើងត្រូវទាញទីក្រុងចេញពីរបារអាសយដ្ឋាន។ កម្មវិធីធម្មតានឹងជួយដោយទាញយកអត្ថបទពី "g" ។ ទៅសញ្ញាក្បៀសបន្ទាប់៖
សូមក្រឡេកមើលគំរូនេះឱ្យបានដិតដល់។
ប្រសិនបើអ្នកបានអានអត្ថបទខាងលើ នោះអ្នកបានយល់រួចហើយថា តួអក្សរមួយចំនួននៅក្នុងកន្សោមធម្មតា (រយៈពេល សញ្ញាផ្កាយ សញ្ញាដុល្លារ។ល។) មានអត្ថន័យពិសេស។ ប្រសិនបើអ្នកត្រូវការរកមើលតួអក្សរទាំងនេះដោយខ្លួនឯង នោះពួកវាត្រូវបាននាំមុខដោយសញ្ញាសម្គាល់ខាងក្រោយ (ជួនកាលគេហៅថា ខែល) ដូច្នេះនៅពេលស្វែងរកបំណែក "g" ។ យើងត្រូវសរសេរក្នុងកន្សោមធម្មតា។ លោក ប្រសិនបើយើងកំពុងស្វែងរកការបូក + ល
តួអក្សរពីរបន្ទាប់នៅក្នុងគំរូរបស់យើង ចំនុច និងសញ្ញាផ្កាយ តំណាងឱ្យចំនួនតួអក្សរណាមួយ ពោលគឺឈ្មោះទីក្រុងណាមួយ។
មានសញ្ញាក្បៀសនៅចុងបញ្ចប់នៃគំរូ ពីព្រោះយើងកំពុងស្វែងរកអត្ថបទពី "g" ។ ទៅសញ្ញាក្បៀស។ ប៉ុន្តែអាចមានសញ្ញាក្បៀសជាច្រើននៅក្នុងអត្ថបទ មែនទេ? មិនត្រឹមតែក្រោយទីក្រុងប៉ុណ្ណោះទេ ប៉ុន្តែក៏ក្រោយផ្លូវ ផ្ទះជាដើម។ តើសំណើរបស់យើងមួយណានឹងឈប់? នោះហើយជាអ្វីដែលសញ្ញាសួរគឺសម្រាប់។ បើគ្មានវាទេ កន្សោមធម្មតារបស់យើងនឹងទាញខ្សែវែងបំផុតដែលអាចធ្វើទៅបាន៖
នៅក្នុងលក្ខខណ្ឌនៃការបញ្ចេញមតិធម្មតា គំរូបែបនេះគឺ "លោភលន់" ។ ដើម្បីកែតម្រូវស្ថានភាព សញ្ញាសួរគឺត្រូវការជាចាំបាច់ - វាធ្វើឱ្យអ្នកកំណត់បរិមាណបន្ទាប់ពីនោះវាឈរ "ក្រិន" - ហើយសំណួររបស់យើងយកអត្ថបទត្រឹមក្បៀសទីមួយបន្ទាប់ពី "g"៖
ឈ្មោះឯកសារពីផ្លូវពេញ
ស្ថានភាពទូទៅមួយទៀតគឺត្រូវស្រង់ឈ្មោះឯកសារចេញពីផ្លូវពេញ។ កន្សោមសាមញ្ញធម្មតានៃទម្រង់នឹងជួយនៅទីនេះ៖
ល្បិចនៅទីនេះគឺថាការស្វែងរកតាមការពិតកើតឡើងក្នុងទិសដៅផ្ទុយ - ពីចុងបញ្ចប់ដល់ដើមពីព្រោះនៅចុងបញ្ចប់នៃគំរូរបស់យើងគឺ $ហើយយើងកំពុងស្វែងរកអ្វីគ្រប់យ៉ាង មុនពេលវាឡើងដល់សញ្ញាថយក្រោយដំបូងពីខាងស្តាំ។ backslash ត្រូវបានគេចចេញ ដូចជាចំនុចនៅក្នុងឧទាហរណ៍មុន។
PS
"ឆ្ពោះទៅរកទីបញ្ចប់" ខ្ញុំចង់បញ្ជាក់ឱ្យច្បាស់ថាទាំងអស់ខាងលើគឺជាផ្នែកតូចមួយនៃលទ្ធភាពទាំងអស់ដែលកន្សោមធម្មតាផ្តល់ឱ្យ។ មានតួអក្សរ និងច្បាប់ពិសេសជាច្រើនសម្រាប់ការប្រើប្រាស់របស់ពួកគេ ហើយសៀវភៅទាំងមូលត្រូវបានសរសេរលើប្រធានបទនេះ (ខ្ញុំសូមណែនាំយ៉ាងហោចណាស់មួយនេះសម្រាប់ការចាប់ផ្តើម)។ នៅក្នុងវិធីមួយ ការសរសេរកន្សោមធម្មតាគឺស្ទើរតែជាសិល្បៈមួយ។ ស្ទើរតែជានិច្ចកាល កន្សោមធម្មតាដែលបានបង្កើតអាចត្រូវបានកែលម្អ ឬបំពេញបន្ថែម ដែលធ្វើឱ្យវាកាន់តែឆើតឆាយ ឬអាចធ្វើការជាមួយជួរទិន្នន័យបញ្ចូលកាន់តែទូលំទូលាយ។
ដើម្បីវិភាគ និងញែកកន្សោមធម្មតារបស់អ្នកដទៃ ឬបំបាត់កំហុសរបស់អ្នក មានសេវាកម្មអនឡាញដ៏ងាយស្រួលមួយចំនួន៖ RegEx101, RegExr និងច្រើនទៀត
ជាអកុសល មិនមែនគ្រប់លក្ខណៈទាំងអស់នៃកន្សោមធម្មតាបុរាណត្រូវបានគាំទ្រនៅក្នុង VBA (ឧទាហរណ៍ ថ្នាក់ស្វែងរកបញ្ច្រាស ឬ POSIX) ហើយអាចដំណើរការជាមួយ Cyrillic ប៉ុន្តែខ្ញុំគិតថាអ្វីដែលមានគ្រប់គ្រាន់សម្រាប់ជាលើកដំបូងដើម្បីផ្គាប់ចិត្តអ្នក។
ប្រសិនបើអ្នកមិនថ្មីចំពោះប្រធានបទ ហើយអ្នកមានអ្វីមួយដែលត្រូវចែករំលែក សូមទុកកន្សោមធម្មតាដែលមានប្រយោជន៍នៅពេលធ្វើការនៅក្នុង Excel នៅក្នុងមតិយោបល់ខាងក្រោម។ ចិត្តមួយល្អ តែស្បែកជើងពីរគូ!
- ការជំនួស និងសម្អាតអត្ថបទដោយប្រើមុខងារ SUBSTITUTE
- ស្វែងរក និងបន្លិចអក្សរឡាតាំងនៅក្នុងអត្ថបទ
- ស្វែងរកអត្ថបទស្រដៀងគ្នាដែលនៅជិតបំផុត (Ivanov = Ivonov = Ivanof ។ល។)