مەزمۇن جەدۋىلى
ئاق بوشلۇقنى ئەڭ ئۈنۈملۈك ئۇسۇلدا بىر تەرەپ قىلىشنى خالامسىز؟ دائىملىق ئىپادىلەش ئارقىلىق كاتەكچىدىكى بارلىق بوشلۇقلارنى ئۆچۈرۈڭ ، بىر نەچچە بوشلۇقنى بىرلا ھەرپكە ئالماشتۇرۇڭ ، پەقەت سانلار ئارىسىدىكى ئارىلىقنى كىچىكلىتىڭ ۋە تېخىمۇ كۆپ. بوشلۇق يوق سانلىق مەلۇمات. كۆپىنچە ئەھۋاللاردا ، ئاق بوشلۇق ياخشى - ئۇنى پەرقلەندۈرۈش ئۈچۈن ئوخشىمىغان ئۇچۇرلارنى پارچىلاشقا ئىشلىتىسىز. بەزى ئەھۋاللاردا ، ئۇ بەلكىم رەزىل بولۇپ قېلىشى مۇمكىن - قوشۇمچە بوشلۇق فورمۇلاڭىزنى قالايمىقانلاشتۇرۇپ ، خىزمەت جەدۋىلىڭىزنى ئاساسەن دېگۈدەك باشقۇرغىلى بولمايدۇ.
Excel خىزمەت جەدۋىلىدىكى ئاق سۆزلەرنى ئۆچۈرۈۋېتىش ئۈچۈن دائىملىق ئىپادىلەش ئۇسۇلىنى قوللىنىشنىڭ ئازغىنە يېرىگە شۇڭغۇشتىن بۇرۇن ، كاللامغا كەلگەن سوئالنى ئالدى بىلەن ھەل قىلماقچىمەن - Excel نىڭ TRIM سى بار تۇرسا ، بىز نېمىشقا regex غا ئېھتىياجلىق بولىمىز؟ فۇنكسىيەسى؟ بۇ 7 بىتلىق ASCII سىستېمىسىدا 32 قىممىتى بار. line (\ n). بۇنىڭدىن باشقا ، بۇ خىل تىپلارغا ماس كېلىدىغان ۋە خام كىرگۈزۈشنى تازىلاشقا ئىنتايىن پايدىلىق بولغان ئاق بوشلۇق (\ s) بار.سانلىق مەلۇمات. ھەممىگە ئايان بولغىنى شۇكى ، قۇدۇق سىرتىدىكى Excel دائىملىق ئىپادىلەشنى قوللىمايدۇ. ئۇلارنى قوزغىتىش ئۈچۈن ئىختىيارى VBA ئىقتىدارىنى قۇرۇشىڭىز كېرەك. تەلىيىمىزگە ، بىزدە ئاللىبۇرۇن بار ، ئۇنىڭ ئىسمى RegExpReplace . ساقلاپ تۇرۇڭ ، بىز ئېلىۋېتىشنى سۆزلەۋاتقاندا نېمىشقا «ئالماشتۇرۇش» كېرەك؟ Excel تىلىدا ، «چىقىرىۋېتىش» پەقەت «قۇرۇق ھەرپ بىلەن ئالماشتۇرۇش» نىڭ يەنە بىر سۆزى :) ھەمدە ھۆججىتىڭىزنى ماكرو قوزغىتىلغان خىزمەت دەپتىرى (.xlsm) قىلىپ ساقلاڭ. , [match_case])
ئالدىنقى ئۈچ خىل تالاش-تارتىش تەلەپ قىلىنىدۇ ، ئاخىرقى ئىككىسى ئىختىيارى بولىدۇ.
قەيەردە: ئىزدەڭ.
- قۇرۇق ھەرپ ("")>
- بوشلۇق ھەرپ ("") كۆپ بوشلۇقنى يەككە بوشلۇق ھەرپ بىلەن ئالماشتۇرۇش
تېخىمۇ كۆپ ئۇچۇرغا ئېرىشىش ئۈچۈن RegExpReplace ئىقتىدارىنى كۆرۈڭ.
RegExpReplace ئىقتىدارى سىزنىڭ خىزمەت دەپتىرىڭىزگە قوشۇلدى ، ئوخشىمىغان سىنارىيەلەرنى بىر-بىرلەپ ھەل قىلايلى.regex ئارقىلىق بارلىق ئاق بوشلۇقلارنى ئۆچۈرۈڭ بوشلۇق ، بىر بەتكۈچ ، ۋاگون قايتۇرۇش ۋە بىر قۇر يەم-خەشەك بولۇپ ، ئۇلارنى قۇرۇق بەلگە ("") بىلەن ئالماشتۇرۇڭ.
ئۈلگە : \ s +
ئالماشتۇرۇش : ""
مەنبە تىزمىسىنى A5 دەپ پەرەز قىلساق ، B5 دىكى فورمۇلا:
=RegExpReplace(A5, "\s+", "")
ئەندىزىڭىزنى باشقۇرۇشقا قۇلايلىق بولسۇن ئۈچۈن ، سىز ئالدىن بېكىتىلگەن كاتەكچىگە regex نى كىرگۈزۈپ ، ئۇنى $ A $ 2 غا ئوخشاش مۇتلەق پايدىلىنىش ئارقىلىق فورمۇلا بىلەن تەمىنلىسىڭىز بولىدۇ ، شۇڭلاشقا فورمۇلانى ئىستونغا كۆچۈرگەندە كاتەكچە ئادرېسى ئۆزگەرمەيدۇ.
=RegExpReplace(A5, $A$2, "")
بىردىن كۆپ ئاق بوشلۇقنى ئۆچۈرۈڭ
قوشۇمچە ئاق بوشلۇقنى ئۆچۈرۈۋېتىڭ n ئۇدا بىر بوشلۇق) ، ئوخشاش regex \ s + نى ئىشلىتىڭ ، ئەمما تېپىلغان مۇسابىقىنى بىرلا بوشلۇق خاراكتېرىگە ئالماشتۇرۇڭ.
ئۈلگە : \ s +
ئالماشتۇرۇش : "" "سانلىق مەلۇمات جەدۋىلىنىڭ ئاستىدا ، سىز بارلىق باشلامچى / كەينىدىكى بوشلۇقلارنى ۋە ئارىلىقتىكى بوشلۇقتىن باشقا ھەممىسىنى رەتلەپ ، بىر نەچچە قۇرنى ساقلاپ قېلىشنى خالايدىغانلىقىڭىزنى پەرەز قىلايلى. بۇ ۋەزىپىنى ئورۇنداش ئۈچۈن ، سىز ئوخشىمىغان ئىككى خىل RegExpReplace فۇنكسىيەسىگە ئېھتىياجلىق بولىسىز. بىر قۇرنىڭ بېشى ۋە ئاخىرىدىن:
=RegExpReplace(A5, "^ +| +$", "")
پەقەت ئىككى فۇنكسىيەنى بىر-بىرىگە ئۇلاڭ:
=RegExpReplace(RegExpReplace(A5, " +", " "), "^ +| +$", "")
ئەڭ ياخشى نەتىجە: مەلۇم بىر ھەرپ بىلەن ، سىز قىلىشقا تىگىشلىك ئىش:
ئالدى بىلەن ، بۇ regex ئارقىلىق باشلامچى ۋە كەينىدىكى ئاق بوشلۇقنى رەتلەڭ:
=RegExpReplace(A8, "^[\s]+|[\s]+$", "")
ئاندىن ، يۇقىرىدىكى ئىقتىدارغا مۇلازىمەت قىلىڭ باشقا بىر RegExpReplace نىڭ تېكىست تالاش-تارتىشىغا ئۇدا بىر ياكى بىر نەچچە ئاق بوشلۇقنى سىز بەلگىلىگەن ھەرپ بىلەن ئالماشتۇرىدۇ. قىستۇرما:
ئەندىزە : \ s +
ئالماشتۇرۇش : -
مەنبە تىزمىسىنى A8 دەپ پەرەز قىلساق بۇ شەكىلنى ئالىدۇ:
=RegExpReplace(RegExpReplace(A8, "^[\s]+|[\s]+$", ""), "\s+", "-")
ياكى سىز ئېكران كۆرۈنۈشىدە كۆرسىتىلگەندەك ئايرىم كاتەكچىلەرگە ئەندىزە ۋە ئالماشتۇرالايسىز:
Regex قۇرۇق قۇرلارنى چىقىرىۋېتىش
بۇ يەردە بىر كاتەكچىدە كۆپ قۇر بار ئابونتلار دائىم سورايدىغان سوئال: «مېنىڭ كامېرلىرىمدا نۇرغۇن قۇرۇق قۇرلار بار ، ئېرىشىشنىڭ ئامالى بارمۇ؟ھەر بىر كاتەكچىدىن ئۆتۈپ ، ھەر بىر قۇرنى قولدا ئۆچۈرۈۋەتكەندىن باشقا ، ئۇلارنى ئۆچۈرۈڭ؟ "جاۋاب: بۇ ئاسان! كېيىنكى قۇر \ n ، regex بولسا:
ئەندىزە : ^ \ n
ئەگەر كۆرۈش بوشلۇقىڭىزدا بوشلۇق ياكى بەتكۈچ بولسا ، بۇ دائىملىق ئىپادىنى ئىشلىتىڭ:
ئەندىزە : ^ [\ t] * \ n
پەقەت بۇ فورمۇلانى ئىشلىتىپ regex نى قۇرۇق ھەرپ بىلەن ئالماشتۇرۇڭ ، بارلىق قۇرۇق قۇرلار بىراقلا يوقىلىدۇ!
=RegExpReplace(A5, $A$2, "")
كىلاسسىك دائىملىق ئىپادىلەش ئىقتىدارلىرى VBA دا بار. VBA RegExp قوللىمايدۇ w سىز بۇ خىل دائىملىق ئىپادىلەشنىڭ بىر مىسالىنى تاپالايسىز. "A 1 2 B" "A 12 B" غا ئايلىنىدۇ. : (? & lt; = \ d) \ s + (? = \ d)
ئاساسلانغان فورمۇلا قۇرۇشيۇقارقى regexes دا ، تۆۋەندىكى ئىككى ئاسان باسقۇچ بار:
- Ablebits Data بەتكۈچىدە ، تېكىست گۇرۇپپىسىدا ، Regex نى بېسىڭ. قۇراللار . تاللاش ، ۋە نى ئۆچۈرۈڭ.
نەتىجىنى قىممەت ئەمەس ، بەلكى فورمۇلا سۈپىتىدە قولغا كەلتۈرۈش ئۈچۈن ، فورمۇلا سۈپىتىدە قىستۇرۇشنى تەكشۈرۈش رامكىسىغا سېلىشنى ئۇنتۇپ قالماڭ.
بىر دەمدىن كېيىن ، ئەسلى سانلىق مەلۇماتنىڭ ئوڭ تەرىپىگە يېڭى ئىستونغا قىستۇرۇلغان AblebitsRegexRemove ئىقتىدارىنى كۆرىسىز. ، A5 دېگىن ۋە فورمۇلانى بىۋاسىتە ئىقتىدار قىستۇرۇش سۆزلىشىش رامكىسى ئارقىلىق كاتەكچىگە قىستۇرۇڭ ، بۇ يەردە AblebitsRegexRemove AblebitsUDFs غا ئايرىلىدۇ.
بۇ ئىقتىدار تىزمىلارنى چىقىرىۋېتىش ئۈچۈن ئالاھىدە لايىھەلەنگەن بولغاچقا ، ئۇ پەقەت ئىككى خىل تالاش-تارتىشنى تەلەپ قىلىدۇ - كىرگۈزۈش تىزمىسى ۋە regex:
=AblebitsRegexRemove(A5, $A$2)
دائىملىق ئىپادىلەش ئارقىلىق Excel. ئوقۇغانلىقىڭىزغا رەھمەت ، كېلەر ھەپتە بىلوگىمىزدا كۆرۈشىڭىزنى ئۈمىد قىلىمەن! - سىناق نۇسخىسى (.exe ھۆججىتى)
=RegExpReplace(RegExpReplace(A5, "\s+", " "), "^[\s]+|[\s]+$", "")
Regex to باشلامچى ۋە كەينىدىكى ئاق بوشلۇقنى ئۆچۈرۈڭ
قۇرنىڭ بېشىدا ياكى ئاخىرىدا ئاق بوشلۇق ئىزدەش ئۈچۈن ، باشلاش ^ نى ئىشلىتىڭ ۋە $ لەڭگەرنى ئاخىرلاشتۇرۇڭ.
ئالدىنقى قاتاردىكى ئاق بوشلۇق:
ئەندىزە : ^ [\ s] +
ئىز قوغلاش ئاق بوشلۇق:
ئەندىزە : [\ s ] $ $