【问题标题】:Python - Searcing MixedCase with regexPython - 使用正则表达式搜索 MixedCase
【发布时间】:2013-07-04 01:55:12
【问题描述】:

我想知道是否有人可以帮助我解决这个问题,我已经尝试了这 2 个正则表达式但没有成功。我想知道我是否在表达式中的任何地方做错了?

string[1] = "MixEdCasE"
string[2] = "MiXeD CaSE"    
re.search("^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])[a-zA-Z0-9]{8}$", string[num])
re.search(r'(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])[a-zA-Z0-9]{8}$', string[num])

【问题讨论】:

  • 你想做什么?
  • @AmineHajyoussef 只是想用正则表达式构建一个主持人功能
  • 为什么不直接搜索[a-z][A-Z]
  • @Jack 你知道吗,我没想到。 Aiyayaya 我总是把事情弄复杂 -__- 。还是谢谢你

标签: python regex string case mixed


【解决方案1】:

这种模式效果很好:

re.search(r'^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])[a-zA-Z0-9]{8}$', string[num])

问题是您的示例字符串包含超过 8 个字符。

【讨论】:

  • 试图增加它,但仍然没有成功
  • @Natsume:使用这种模式,您必须正好有 8 个字符。允许更多将{8}替换为{8,}
  • 仍然没有运气。 >>> re.search(r'^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])[a-zA-Z0-9]{8,}$', "MixEdCasE") >>>
  • @Natsume: MixEdCasE 不包含数字。
猜你喜欢
  • 2013-08-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-27
  • 2015-02-23
  • 2015-05-30
  • 2014-01-23
相关资源
最近更新 更多