Regex VB.Net正则表达式许可证密钥

Regex VB.Net正则表达式许可证密钥,regex,vb.net,Regex,Vb.net,所以我想从一些文本(mytext)中解析许可证密钥 所有许可证密钥的格式为:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX(X为随机字符) 我试过: Dim findtext1 As String = "(?<=\w{5}-\w{5}-\w{5}-\w{5}-\w{5})" Dim myregex1 As String = mytext Dim doregex1 As MatchCollection = Regex.Matches(myregex1, findtex

所以我想从一些文本(mytext)中解析许可证密钥

所有许可证密钥的格式为:
XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
(X为随机字符)

我试过:

Dim findtext1 As String = "(?<=\w{5}-\w{5}-\w{5}-\w{5}-\w{5})"
Dim myregex1 As String = mytext
Dim doregex1 As MatchCollection = Regex.Matches(myregex1, findtext1)
Dim matches1 As String = ""
For Each match1 As Match In doregex1
    matches1 = matches1 + match1.ToString + Environment.NewLine
Next
MsgBox(matches1)
Dim findtext1 As String=“(?)?
但是没有发现任何结果

您的正则表达式
有问题(?
但是没有发现任何结果


正则表达式
有问题(?我认为您需要从较大的文本中提取这些数字。因此,您需要使模式成为消费模式(即,删除
)(?我认为您需要从较大的文本中提取这些数字。因此,您需要使模式成为消费模式(即删除
(?你为什么要使用
lookback
?你的角色类由什么组成?我不理解你。你希望匹配
XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
那么为什么要使用
(?然后
(\w{5}-\w{5}-\w{5}-\w{5}-\w{5}-\w{5}-\w{5})
是答案吗?我删除了
?你为什么要使用
lookback
?你的角色类由什么组成?我不理解你。你希望匹配
XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
那么为什么要使用
(\w{5}-\w{5}-\w{5}-\w{5}-\w{5})是答案吗?我删除了
Dim findtext1 As String = "\b\w{5}(?:-\w{5}){4}\b"
Dim myregex1 As String = "ABCDE-XXXXX-XXXXX-XXXXX-12345;FGHIJ-XXXXX-XXXXX-XXXXX-12345; ABCDE-XXXXX-XXXXX-XXXXX-123456"
Dim doregex1 As MatchCollection = System.Text.RegularExpressions.Regex.Matches(myregex1, findtext1)
Dim matches1 As String = ""
For Each match1 As Match In doregex1
    matches1 = matches1 + match1.ToString + Environment.NewLine
Next
Console.Write(matches1)
ABCDE-XXXXX-XXXXX-XXXXX-12345
FGHIJ-XXXXX-XXXXX-XXXXX-12345
Regex.Matches(myregex1, findtext1, RegexOptions.ECMAScript)
(?<=\b|_)[^\W_]{5}(?:-[^\W_]{5}){4}(?=\b|_)