国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
為什么使用正則表達式來修剪Excel中的空格?
如何在Excel中啟用正則表達式
如何用正則刪除空格 - 示例
使用正則刪除所有空格
刪除多個空格
正則刪除領(lǐng)先和落后的空格
刪除額外的空格,但要保持換行符
正則替換一個字符代替多個空間
以刪除空線的正則
用正則工具拆卸空格
以刪除數(shù)字之間的空間
可用下載
首頁 專題 excel 使用Regex刪除Excel中的Whitespaces和空線

使用Regex刪除Excel中的Whitespaces和空線

Mar 28, 2025 am 09:02 AM

希望以最有效的方式處理空格?使用正則表達式刪除單元格中的所有空間,用單個字符替換多個空格,僅在數(shù)字之間的修剪空間等等。

無論您使用的輸入數(shù)據(jù)哪個,您幾乎都不會遇到?jīng)]有空格的數(shù)據(jù)集。在大多數(shù)情況下,空格很好 - 您使用它在視覺上分開不同的信息,以使其更容易感知。但是,在某些情況下,它可能會變成邪惡 - 額外的空間可能會弄亂您的公式,并使您的工作表幾乎無法管理。

為什么使用正則表達式來修剪Excel中的空格?

在我們深入研究使用正則表達式刪除Excel工作表中的Whiteves的挑剔之前,我想首先解決問題的問題 - 為什么當Excel Excel已經(jīng)具有裝飾功能時,為什么我們需要Regexes?

要了解差異,讓我們看看在每種情況下被認為是什么:

  • 內(nèi)置的裝飾函數(shù)只能剝離7位ASCII系統(tǒng)中具有32個值的空間字符。
  • 正則表達式可以識別幾種不同形式的空格,例如Space(),Tab(\ t),托架返回(\ r)和新行(\ n)。此外,還有與所有這些類型相匹配的Whitespace字符(\ s),對于清潔原始輸入數(shù)據(jù)非常有幫助。

確切地知道幕后會發(fā)生什么,解決解決方案要容易得多,對嗎?

如何在Excel中啟用正則表達式

眾所周知的事實是,開箱即用的Excel不支持正則表達式。要啟用它們,您需要創(chuàng)建自定義VBA功能。幸運的是,我們已經(jīng)有一個名為Regexpreplace 。等等,為什么在談論刪除時“替換”?在Excel語言中,“刪除”只是“用空字符串替換”的另一個詞:)

要將功能添加到Excel中,只需從此頁面復制其代碼,將其粘貼到VBA編輯器中,然后將您的文件保存為宏啟用的工作簿(.XLSM)。

這是函數(shù)的語法供您參考:

regexpreplace(文本,模式,替換,[instance_num],[match_case])

需要前三個參數(shù),最后兩個是可選的。

在哪里:

  • 文本- 要搜索的原始字符串。
  • 模式- 要搜索的正則。
  • 替換- 要替換??的文本。要刪除空格,您將此參數(shù)設(shè)置為:
    • 空字符串(“”)絕對修剪所有空格
    • 空間字符(“”)用單個空間字符替換多個空格
  • instance_num (可選) - 實例號。在大多數(shù)情況下,您會省略它以替換所有實例(默認)。
  • match_case (可選) - 布爾值指示是匹配(true)還是忽略(false)文本案例。對于空格,它是無關(guān)緊要的,因此被省略了。

有關(guān)更多信息,請參閱Regexpreplace功能。

如何用正則刪除空格 - 示例

隨著Regexpreplace功能添加到您的工作簿中,讓我們一次處理不同的方案。

使用正則刪除所有空格

要刪除字符串中的所有空格,您只需搜索任何空格字符,包括空間,標簽,托架返回和線饋電,然后用空字符串(“”)替換它們。

模式:\ s

替代品: ””

假設(shè)源字符串在A5中,B5中的公式為:

=RegExpReplace(A5, "\s ", "")

為了使管理模式更容易,您可以在預定義的單元格中輸入正則表達式,并使用絕對參考(例如$ a $ 2)將其提供給公式,因此,在將公式沿列下復制公式時,單元格地址將保持不變。

=RegExpReplace(A5, $A$2, "")

使用Regex刪除Excel中的Whitespaces和空線

刪除多個空格

要刪除額外的空格(即多個連續(xù)的空間),請使用相同的正則正則\ s,但用單個空間字符替換找到的匹配項。

模式:\ s

替代品: ” ”

=RegExpReplace(A5, "\s ", " ")

使用Regex刪除Excel中的Whitespaces和空線

請注意,此公式不僅在單詞之間,而且在字符串的開始和結(jié)尾之間保持一個空間角色,這不是很好。為了擺脫領(lǐng)先和落后的空格,請將上述公式嵌套到另一個從頭開始和結(jié)束的Regexpreplace函數(shù)中:

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

使用Regex刪除Excel中的Whitespaces和空線

正則刪除領(lǐng)先和落后的空格

要在行的開頭或結(jié)尾處搜索空格,請使用“ start” ^和End $錨點。

領(lǐng)先的空格:

模式: ^[\ s]

尾巴

模式:[\ s] $

領(lǐng)先落后的空間:

模式: ^[\ s] | [\ s] $

無論選擇哪種正則態(tài)度,都一無所有。

替代品: ””

例如,為了在A5中的開始時和字符串結(jié)束時消除所有空間,該公式為:

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

如下面的屏幕截圖所示,這僅消除了領(lǐng)先和尾隨的空格。單詞之間的空間仍然完好無損,為讀者的眼睛創(chuàng)造了視覺上令人愉悅的視圖。

使用Regex刪除Excel中的Whitespaces和空線

刪除額外的空格,但要保持換行符

使用多行字符串時,您可能希望擺脫額外的空間,但要保留線路。為了完成此操作,而不是whitespace字符\ s,搜索空格[]或空格和標簽[\ t]。當您的源數(shù)據(jù)是從另一個來源導入的,例如文本編輯器時,后一種模式就會派上用場。

在下面的數(shù)據(jù)集中,假設(shè)您希望修剪所有領(lǐng)先/尾隨的空間,除了一個內(nèi)部空間以外的所有線路,并保持多行完整。為了完成任務,您需要兩個不同的Regexpreplace功能。

第一個功能用單個空間字符代替了多個空間。

=RegExpReplace(A5, " ", " ")

另一個從一條線的開頭和結(jié)尾處剝?nèi)チ丝臻g:

=RegExpReplace(A5, "^ | $", "")

只需將兩個功能嵌套到另一個功能中:

=RegExpReplace(RegExpReplace(A5, " ", " "), "^ | $", "")

而且您將獲得完美的結(jié)果:

使用Regex刪除Excel中的Whitespaces和空線

正則替換一個字符代替多個空間

如果您想從字符串中刪除所有空間并用特定字符替換每個連續(xù)的空格,則這是您需要做的:

首先,使用此正則延期領(lǐng)先和尾隨的空間:

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

然后,將上述函數(shù)提供給另一個Regexpreplace的文本參數(shù),該函數(shù)將一個或多個連續(xù)的Whitespaces替換為您指定的字符,例如連字符:

模式:\ s

替代品: -

假設(shè)源字符串在A8中,該公式采用此形狀:

=RegExpReplace(RegExpReplace(A8, "^[\s] |[\s] $", ""), "\s ", "-")

或者,您可以在單獨的單元中輸入模式和替換,例如屏幕截圖中所示:

使用Regex刪除Excel中的Whitespaces和空線

以刪除空線的正則

這個問題是,一個單元格中有多條線的用戶經(jīng)常問:“我的單元格中有很多空白行。除了通過每個單元格并手動刪除每條線以外,有什么方法可以擺脫它們嗎?”答案:很容易!

要匹配從當前行的開始 ^到下一行\(zhòng) n的空字符的空行,則正則是:

模式: ^\ n

如果您的視覺空白線包含空格或選項卡,請使用此正則表達式:

模式: ^[\ t]*\ n

只需使用此公式將其替換為空字符串,所有空白行將立即消失!

=RegExpReplace(A5, $A$2, "")

使用Regex刪除Excel中的Whitespaces和空線

用正則工具拆卸空格

以上示例僅表明了Regexes提供的一小部分。不幸的是,并非經(jīng)典正則表達式的所有功能都在VBA中提供。

幸運的是,我們的Ultimate Suite隨附的正則工具沒有這些限制,因為它們由Microsoft的.NET Regex引擎處理。這使您可以構(gòu)建更復雜的模式,而VBA REGEXP不支持。在下面,您會找到這樣的正則表達式的示例。

以刪除數(shù)字之間的空間

在字母數(shù)字字符串中,假設(shè)您只想在數(shù)字之間刪除空格,因此“ A 1 2 B”之類的字符串變?yōu)椤?A 12 B”。

要匹配任意兩個數(shù)字之間的空格,您可以使用以下外觀:

模式:(?

為了根據(jù)上述正則創(chuàng)建公式,以下是兩個簡單的步驟可以執(zhí)行:

  1. “ ablebits數(shù)據(jù)”選項卡上,在文本組中,單擊Regex工具。

    使用Regex刪除Excel中的Whitespaces和空線

  2. Regex Tools Pane上,選擇源數(shù)據(jù),輸入您的正則表達式,選擇“刪除”選項,然后命中刪除

    要將結(jié)果作為公式而不是價值觀,請記住在插入物中以公式復選框放置tick。

    使用Regex刪除Excel中的Whitespaces和空線

一會兒,您會看到ablebitsregexremove函數(shù)插入了原始數(shù)據(jù)右側(cè)的新列中。

另外,您可以在某些單元格中輸入正則gex,并使用插入功能對話框直接在單元格中插入公式,而在ablebitsregexremove下進行了ablebitsudfs分類。

由于此功能是專門為刪除字符串而設(shè)計的,因此僅需要兩個參數(shù) - 輸入字符串和REGEX:

=AblebitsRegexRemove(A5, $A$2)

使用Regex刪除Excel中的Whitespaces和空線

這就是如何使用正則表達式刪除Excel中的空間的方法。我感謝您閱讀,并期待下周在我們的博客上與您見面!

可用下載

用正則示例(.xlsm文件)Ultimate Suite刪除空格 - 試用版(.EXE文件)

以上是使用Regex刪除Excel中的Whitespaces和空線的詳細內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻,版權(quán)歸原作者所有,本站不承擔相應法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1601
29
PHP教程
1502
276