excel中用正则匹配_Excle正则式 | excel中使用正则表达式

正则表达式如何匹配excel文件

*.xl*

用Java正则表达式来过滤Excle格式。比如Excle文件格式有.xlsx”和.xls两种。那么正则表达式怎么写呢。

\\.[x]{1}[l]{1}[s]{1}[x]?

那样写的 话,就是 \\.xlsx?

EXCEL正则表达式

假设数据在A1,在B1输入公式:

=LEFT(A1,LENB(A1)-LEN(A1))

excel中使用正则表达式

Function JiSuan(Rng As Range) As Single

Dim Reg As New RegExp

Dim R As String

On Error GoTo ErrHand

R = (Rng)

Reg.Global = True

Reg.Pattern = "[\u4e00-\u9fa5]|m|M"

R = Reg.Replace(R, "")

Reg.Pattern = "×"

R = Reg.Replace(R, "*")

RegSZCC R

RegSZJJ R

JiSuan = Round(CSng(R), 4)

Set Reg = Nothing

Exit Function

ErrHand:

JiSuan = Err.Description

End Function

Sub RegSZCC(ByRef S As String)

Dim Reg As New RegExp

Dim MS

Dim R As String

Reg.Pattern = "(\d \.{0,1}\d*)(\*|\\)(\d \.{0,1}\d*)"

Set MS = Reg.Execute(S)

If MS.Count = 1 Then

If MS(0).SubMatches(1) = "\" Then

R = Format(CSng(MS(0).SubMatches(0)) / CSng(MS(0).SubMatches(2)), "0.00000")

Else

R = Format(CSng(MS(0).SubMatches(0)) * CSng(MS(0).SubMatches(2)), "0.00000")

End If

S = Reg.Replace(S, R)

RegSZCC S

End If

End Sub

Sub RegSZJJ(ByRef S As String)

Dim Reg As New RegExp

Dim MS

Dim R As String

Reg.Pattern = "(\d \.{0,1}\d*)(\ |\-)(\d \.{0,1}\d*)"

Set MS = Reg.Execute(S)

If MS.Count = 1 Then

If MS(0).SubMatches(1) = " " Then

R = Format(CSng(MS(0).SubMatches(0))   CSng(MS(0).SubMatches(2)), "0.00000")

Else

R = Format(CSng(MS(0).SubMatches(0)) - CSng(MS(0).SubMatches(2)), "0.00000")

End If

S = Reg.Replace(S, R)

RegSZJJ S

End If

End Sub

EXCEL用方法

B1=jisuan(A1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值