gpt4 book ai didi

带或不带破折号的正则表达式匹配校验和

转载 作者:行者123 更新时间:2023-12-04 15:20:13 24 4
gpt4 key购买 nike

为了匹配无破折号的校验和,我可以这样做:

\b[0-9a-z]{32}\b

但是,我看到一些校验和也有破折号,例如:

d3bd55bf-062f-473b-9417-935f62c4c98a

虽然这可能是固定大小,8、4、4、4、12,但我想知道我是否可以做一个正则表达式,其中非破折号数字的数量加起来 32. 我认为答案是否定的,但希望一些正则表达式向导可以想出一些办法。

这是一些示例输入的起点:https://regex101.com/r/K0IMKe/1 .

最佳答案

你可以使用

\b[0-9a-z](?:-?[0-9a-z]){31}\b

参见 regex demo .

匹配

  • \b - 单词边界
  • [0-9a-z] - 数字或小写 ASCII 字母
  • (?:-?[0-9a-z]){31} - 可选 - 的 31 次重复,后跟一位数字或小写字母ASCII 字母
  • \b - 单词边界。

如果你不介意有一个尾随 - 如果它后面有一个单词 char,在匹配结束时,你也可以使用

\b(?:[0-9a-z]-?){32}\b

参见 this regex demo .此处,(?:[0-9a-z]-?){32} 将匹配 32 次重复的数字或小写 ASCII 字母,后跟可选的连字符。

关于带或不带破折号的正则表达式匹配校验和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63476126/

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