gpt4 book ai didi

regex - 分析字母数字字符串的格式

转载 作者:行者123 更新时间:2023-12-02 05:52:35 26 4
gpt4 key购买 nike

我正在尝试编写一个函数,它接收一个字符串,对其进行解析,然后返回另一个字符串,该字符串总结了原始字符串中连续字母或数字字符的数量。

例如,字符串 999aa45bbx 将返回 3N2A2N3A,即

  • 3 个数字,
  • 后跟 2 个 alpha,
  • 2 个数字,
  • 3 个阿尔法。

我正在使用该函数来分析保单 ID 号的格式。到目前为止,我在网上找到了提取字母或数字字符的解决方案,但没有任何内容描述这些字符在原始字符串中的格式或顺序。

有人能帮忙吗?

最佳答案

像这样的正则表达式就可以完成工作

  • 一起去VBE
  • 插入模块
  • 复制并粘贴下面的代码
  • 一起回到 Excel

然后您可以在 Excel 中使用该函数(它也检测无效字符串),即在 B1 中
=AlphaNumeric(A1)

enter image description here

Function AlphaNumeric(strIn As String) As String
Dim objRegex As Object
Dim objRegMC As Object
Dim objRegM As Object
Dim strOut As String
Set objRegex = CreateObject("vbscript.regexp")
With objRegex
.Global = True
.ignorecase = True
.Pattern = "[^\w]"
If .test(strIn) Then
AlphaNumeric = "One or more characters is invalid"
Else
.Pattern = "(\d+|[a-z]+)"
Set objRegMC = .Execute(strIn)
For Each objRegM In objRegMC
strOut = strOut & (objRegM.Length & IIf(IsNumeric(objRegM), "N", "A"))
Next
AlphaNumeric = strOut
End If
End With
End Function

关于regex - 分析字母数字字符串的格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10081492/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com