如何用excel中的VBA的正規表示式提取出字串

2021-04-14 05:40:21 字數 2580 閱讀 4609

1樓:匿名使用者

sub regtest()

dim oregexp as objectdim omatches as objectdim stext as string

stext = "柴塘河節制閘3300×bai4960平面鋼閘門du"set oregexp = createobject("vbscript.regexp")

with oregexp

.pattern = "\d+(\d+)\d+(\d+)\d+"

set omatches = .execute(stext)debug.print omatches(0).submatches(0)    '第一個數

zhidebug.print omatches(0).submatches(1)    '第二個數

end with

set oregexp = nothingset omatches = nothingend sub

程式中stext字串**可dao

以從內單元格賦值,

debug.print可以將

容兩個數改為賦值給兩個變數。

2樓:匿名使用者

sub t()

s = "柴塘河節制閘3300×4960平面鋼版閘門權"set regxp = createobject("vbscript.regexp")

with regxp

.global = true

.pattern = "\d+"

for each m in .execute(s)debug.print m

next

end with

end sub

3樓:魚木混豬

軟體版本:office2007

方法如下:

1.利用正規表示式,提取a列的數字,並對數字求和:

2.alt+f11,輸入**如下:

3.f5執行**,返回excel,得到結果:

如何用sed和正規表示式提取子字串

4樓:好程式設計師

([0-9-]+) ([0-9:]+)你要的結果分別在$1和$2裡面, 常用正規表示式 匹配中文回字元的正規表示式: [u4e00-u9fa5] 評註:

答匹配中文還真是個頭疼的事,有了這個表示式就好辦了 匹配雙位元組字元(包括漢字在內):[^x00-xff] 評註:可以用來計算字串的

excelvba,正規表示式,怎麼替換一部分字串

5樓:陽光上的橋

只有兩個關鍵字最好不用正則,if instr兩次就可以了,如果關鍵字多一點,可以使用回for迴圈,例如:答

str = ".需要處理的字串,可以從檔案、區域、陣列等.."

for each t in array("中國人民","美國紐約","印度阿三")

if instr(str,t)>0 thenstr = t

exit for

end if

next t

比正規表示式簡單和高效。

6樓:紫薇參星

你可以用replace函式去bai掉「du中國人民」和"美國zhi紐約"兩端的字元

dao.具體程式版如下:

public sub testreplace()dim ss, re, rv

ss = "12蘇5a中國人民一二權d三"& vbnewline &"egg其d中國人民四a1五六"& vbnewline&"凡dsf事都美國紐約aafa分"& vbnewline&"發的事都美國紐約a分fa分" & vbnewline

set re = new regexp

re.pattern = "^\s+(中國人民|美國紐約)\s+$"

re.global = true

re.ignorecase = true

re.multiline = true

rv = re.replace(ss, "$1")msgbox rv

end sub

7樓:姓王的

你只說明了錯誤結果,不知道你想要的正確結果,沒法幫你改呀

最好將你的**也貼出來

8樓:匿名使用者

正則多累人啊,你這麼簡單的東西就不要正則了吧

if instr(***,"中國人民")>0 then x=「中國人民」

if instr(***,"美國紐約")>0 then x=「美國紐約」

9樓:匿名使用者

excel的替換功能比較弱,可以將資料貼上到word進行替換,word萬用字元種類較多。

需要你將具體資料示例出來才能知道如何解決。

10樓:產品專案方案設計大全

1、第一種方式: ^\s+(中國人民|美國紐約)&(0-4)\s+$

2、第二種方式:這種方式最簡單 利用自帶工具替換功能,一個一個的來:例如 中國人名 其他替換為空

11樓:你好麼閔明

替換*中國人民*為中國人民即可

要**,錄個巨集就看到

請問如何用VBA將EXCEL檔案中的資料複製到別EXCEL檔案相同的位置

sheet1的區域a1 c3拷貝到sheet2的區域a1 c3 sheet1.range a1 c3 copy sheet2.range a1 c3 sub aaa dim sh1 as worksheet dim sh2 as worksheet set sh1 workbooks 1.xls s...

在excel中如何使用vba的巨集

保護公式可以這樣 選擇不需要保護 需要錄入內容 的單元格,設定單元格屬性,最後一個 保護 卡里面的 鎖定 取消,其它那些沒有取消鎖定的有公式的單元格自然是鎖定狀態。下一步是在工具 審閱 新版本 或者 工具 選單 舊版本 裡面選擇 保護工作表 設定一個密碼後確認。完成這兩步之後,鎖定的單元格內容就無法...

vba如何去呼叫另excel中的function,注意

function 自定義函抄 數,只能在當前 工作襲簿中使用 如果本bai電腦上都想用du,建議儲存為個人zhi巨集,以後本電腦上的工作薄dao都可以使用 function可以向其他函式一樣,正常呼叫即可function ms tt msgbox tt end function sub tets m...