Regex ئارقىلىق Excel دىكى ئاق بوشلۇق ۋە قۇرۇق قۇرلارنى ئۆچۈرۈڭ

  • ھەمبەھىرلەڭ
Michael Brown

ئاق بوشلۇقنى ئەڭ ئۈنۈملۈك ئۇسۇلدا بىر تەرەپ قىلىشنى خالامسىز؟ دائىملىق ئىپادىلەش ئارقىلىق كاتەكچىدىكى بارلىق بوشلۇقلارنى ئۆچۈرۈڭ ، بىر نەچچە بوشلۇقنى بىرلا ھەرپكە ئالماشتۇرۇڭ ، پەقەت سانلار ئارىسىدىكى ئارىلىقنى كىچىكلىتىڭ ۋە تېخىمۇ كۆپ. بوشلۇق يوق سانلىق مەلۇمات. كۆپىنچە ئەھۋاللاردا ، ئاق بوشلۇق ياخشى - ئۇنى پەرقلەندۈرۈش ئۈچۈن ئوخشىمىغان ئۇچۇرلارنى پارچىلاشقا ئىشلىتىسىز. بەزى ئەھۋاللاردا ، ئۇ بەلكىم رەزىل بولۇپ قېلىشى مۇمكىن - قوشۇمچە بوشلۇق فورمۇلاڭىزنى قالايمىقانلاشتۇرۇپ ، خىزمەت جەدۋىلىڭىزنى ئاساسەن دېگۈدەك باشقۇرغىلى بولمايدۇ.

Excel خىزمەت جەدۋىلىدىكى ئاق سۆزلەرنى ئۆچۈرۈۋېتىش ئۈچۈن دائىملىق ئىپادىلەش ئۇسۇلىنى قوللىنىشنىڭ ئازغىنە يېرىگە شۇڭغۇشتىن بۇرۇن ، كاللامغا كەلگەن سوئالنى ئالدى بىلەن ھەل قىلماقچىمەن - Excel نىڭ TRIM سى بار تۇرسا ، بىز نېمىشقا regex غا ئېھتىياجلىق بولىمىز؟ فۇنكسىيەسى؟ بۇ 7 بىتلىق ASCII سىستېمىسىدا 32 قىممىتى بار. line (\ n). بۇنىڭدىن باشقا ، بۇ خىل تىپلارغا ماس كېلىدىغان ۋە خام كىرگۈزۈشنى تازىلاشقا ئىنتايىن پايدىلىق بولغان ئاق بوشلۇق (\ s) بار.سانلىق مەلۇمات. ھەممىگە ئايان بولغىنى شۇكى ، قۇدۇق سىرتىدىكى Excel دائىملىق ئىپادىلەشنى قوللىمايدۇ. ئۇلارنى قوزغىتىش ئۈچۈن ئىختىيارى VBA ئىقتىدارىنى قۇرۇشىڭىز كېرەك. تەلىيىمىزگە ، بىزدە ئاللىبۇرۇن بار ، ئۇنىڭ ئىسمى RegExpReplace . ساقلاپ تۇرۇڭ ، بىز ئېلىۋېتىشنى سۆزلەۋاتقاندا نېمىشقا «ئالماشتۇرۇش» كېرەك؟ Excel تىلىدا ، «چىقىرىۋېتىش» پەقەت «قۇرۇق ھەرپ بىلەن ئالماشتۇرۇش» نىڭ يەنە بىر سۆزى :) ھەمدە ھۆججىتىڭىزنى ماكرو قوزغىتىلغان خىزمەت دەپتىرى (.xlsm) قىلىپ ساقلاڭ. , [match_case])

ئالدىنقى ئۈچ خىل تالاش-تارتىش تەلەپ قىلىنىدۇ ، ئاخىرقى ئىككىسى ئىختىيارى بولىدۇ.

قەيەردە: ئىزدەڭ.

  • ئەندىزە - ئىزدەشنىڭ regex. ئاق بوشلۇق نى چىقىرىۋېتىش ئۈچۈن ، سىز بۇ تالاش-تارتىشنى ھەر ئىككىسىگە تەڭشەيسىز:
    • قۇرۇق ھەرپ ("")>
    • بوشلۇق ھەرپ ("") كۆپ بوشلۇقنى يەككە بوشلۇق ھەرپ بىلەن ئالماشتۇرۇش
  • (ئىختىيارىي) - مىسال نومۇرى. كۆپىنچە ئەھۋاللاردا ، ئۇنى بارلىق ئەھۋاللارنىڭ ئورنىغا قويۇۋېتىسىز<سۈكۈتتىكى). ئاق بوشلۇققا نىسبەتەن ، بۇ مۇناسىۋەتسىز ، شۇڭا چىقىرىۋېتىلدى.
  • تېخىمۇ كۆپ ئۇچۇرغا ئېرىشىش ئۈچۈن 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 دا ، تۆۋەندىكى ئىككى ئاسان باسقۇچ بار:

    1. Ablebits Data بەتكۈچىدە ، تېكىست گۇرۇپپىسىدا ، Regex نى بېسىڭ. قۇراللار . تاللاش ، ۋە نى ئۆچۈرۈڭ.

      نەتىجىنى قىممەت ئەمەس ، بەلكى فورمۇلا سۈپىتىدە قولغا كەلتۈرۈش ئۈچۈن ، فورمۇلا سۈپىتىدە قىستۇرۇشنى تەكشۈرۈش رامكىسىغا سېلىشنى ئۇنتۇپ قالماڭ.

    بىر دەمدىن كېيىن ، ئەسلى سانلىق مەلۇماتنىڭ ئوڭ تەرىپىگە يېڭى ئىستونغا قىستۇرۇلغان AblebitsRegexRemove ئىقتىدارىنى كۆرىسىز. ، A5 دېگىن ۋە فورمۇلانى بىۋاسىتە ئىقتىدار قىستۇرۇش سۆزلىشىش رامكىسى ئارقىلىق كاتەكچىگە قىستۇرۇڭ ، بۇ يەردە AblebitsRegexRemove AblebitsUDFs غا ئايرىلىدۇ.

    بۇ ئىقتىدار تىزمىلارنى چىقىرىۋېتىش ئۈچۈن ئالاھىدە لايىھەلەنگەن بولغاچقا ، ئۇ پەقەت ئىككى خىل تالاش-تارتىشنى تەلەپ قىلىدۇ - كىرگۈزۈش تىزمىسى ۋە regex:

    =AblebitsRegexRemove(A5, $A$2) دائىملىق ئىپادىلەش ئارقىلىق Excel. ئوقۇغانلىقىڭىزغا رەھمەت ، كېلەر ھەپتە بىلوگىمىزدا كۆرۈشىڭىزنى ئۈمىد قىلىمەن! - سىناق نۇسخىسى (.exe ھۆججىتى)

    سۆزلەر ، ئەمما بىر قۇرنىڭ بېشىدا ۋە ئاخىرىدا ، بۇ ياخشى ئەمەس. قوغۇشۇن ۋە ئىز قوغلاش بوشلۇقىدىن قۇتۇلۇش ئۈچۈن ، يۇقارقى فورمۇلانى باشقا بىر RegExpReplace فۇنكىسىيەسىگە ئۇلاپ ، باشتىن-ئاخىر بوشلۇقنى تارتىۋالىدۇ:

    =RegExpReplace(RegExpReplace(A5, "\s+", " "), "^[\s]+|[\s]+$", "")

    Regex to باشلامچى ۋە كەينىدىكى ئاق بوشلۇقنى ئۆچۈرۈڭ

    قۇرنىڭ بېشىدا ياكى ئاخىرىدا ئاق بوشلۇق ئىزدەش ئۈچۈن ، باشلاش ^ نى ئىشلىتىڭ ۋە $ لەڭگەرنى ئاخىرلاشتۇرۇڭ.

    ئالدىنقى قاتاردىكى ئاق بوشلۇق:

    ئەندىزە : ^ [\ s] +

    ئىز قوغلاش ئاق بوشلۇق:

    ئەندىزە : [\ s ] $ $

    مايكول بروۋن مەخسۇس تېخنىكا ھەۋەسكارى بولۇپ ، يۇمشاق دېتال قوراللىرى ئارقىلىق مۇرەككەپ جەريانلارنى ئاددىيلاشتۇرىدۇ. تېخنىكا ساھەسىدە ئون نەچچە يىللىق تەجرىبىسى بار ، ئۇ Microsoft Excel ۋە Outlook ، شۇنداقلا Google Sheets ۋە Docs قاتارلىق جەھەتلەردە ئۆزىنىڭ ماھارىتىنى ئۆستۈردى. مايكىلنىڭ بىلوگى ئۆزىنىڭ بىلىمى ۋە تەجرىبىسىنى باشقىلار بىلەن ئورتاقلىشىشقا بېغىشلانغان بولۇپ ، ئىشلەپچىقىرىش ۋە ئۈنۈمنى ئاشۇرۇش ئۈچۈن ئاسان ئەگىشىدىغان ئۇسۇل ۋە دەرسلىكلەر بىلەن تەمىنلەيدۇ. مەيلى تەجرىبىلىك كەسپىي خادىم ياكى يېڭى ئۆگەنگۈچى بولۇڭ ، مايكولنىڭ بىلوگى بۇ مۇھىم يۇمشاق دېتال قوراللىرىدىن ئۈنۈملۈك پايدىلىنىش ئۈچۈن قىممەتلىك چۈشەنچە ۋە ئەمەلىي مەسلىھەت بىلەن تەمىنلەيدۇ.