我在Excel中工作,需要VBA代碼來提取3個特定數字模式。在A列中,我有幾行字符串,包括字母,數字和標點符號。我需要刪除除13位數字(僅包含數字),10位數字(僅包含數字)或9位數字後面緊跟「x」字符的所有字符。這些是伊斯蘭數字。用於提取3個特定數字模式的VBA代碼
其餘字符應該用一個空格分隔,而且只能用一個空格分隔。因此,對於A1中的以下字符串:「這裏有幾本書,包括0192145789和9781245687456.另外,還包含了包含isbn 045789541x的書,這本書是1億本。」
輸出應該是:0192145789 9781245687456 045789541x
注意,100000000不應該被包含在輸出,因爲它不符合任何上述三種模式。
我不反對excel公式解決方案,而不是VBA,但我認爲VBA會更乾淨。提前致謝。
分割字符串使用空格作爲分隔符使用它作爲一個公式,然後串聯只以數字開頭的段。 –
如果你想要正則表達式,請看看[post](http://stackoverflow.com/q/22542834/2521004),它概述了在VBA中使用正則表達式的幾種方法。 –