gpt4 book ai didi

python - 如何在字符串中查找模式

转载 作者:行者123 更新时间:2023-11-30 22:04:54 25 4
gpt4 key购买 nike

我在查找字符串中的模式位置时陷入困境。该字符串由 6 个字符组成,仅包含大写字母 (A-Z)数字 (0-9)

check_string = 'I have a string 09A4N5'

我必须找到'09A4N5'的位置,它可以是类似格式的任何其他字符串。我尝试使用正则表达式,并找到了下面提到的解决方案,它给出了单词 'string' 的位置。

re.search('\w+\w+\w+\w+\w+\w',check_string).start()
9

最佳答案

您可以使用

m = re.search(r'\b[A-Z0-9]{6}\b', check_string)
if m:
print(m.group()) # => 09A4N5
print(m.start(0)) # => 16

请参阅Python demoregex demo .

图案详细信息

  • \b - 字边界
    • [A-Z0-9] - 大写 ASCII 字母或数字
    • {6} - 正好六次
  • \b - 字边界。

如果您想在正则表达式中要求至少一位数字和至少一个大写字母,请使用

r'\b(?=[A-Z]*\d)(?=\d*[A-Z])[A-Z0-9]{6}\b'

请参阅regex demo 。在这里,

  • (?=[A-Z]*\d) - 需要至少一位数字
  • (?=\d*[A-Z]) - 需要至少一个大写字母

关于python - 如何在字符串中查找模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53146447/

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