[英]How to search for alphanumeric substring of specific length in Python?
Say I have a string "ldhjshjds HdAjhdshj4 Hdsshj4 kdskjdshjdsjds" 说我有一个字符串“ ldhjshjds HdAjhdshj4 Hdsshj4 kdskjdshjdsjds”
I only want to search for substrings (alphanumeric only) starting with "H", but only if the string is between 10-20 characters. 我只想搜索以“ H”开头的子字符串(仅字母数字),但前提是该字符串介于10到20个字符之间。
"HdAjhdshj4" would be a match. “ HdAjhdshj4”将是一个匹配项。 "Hdsshj4" would not. “ Hdsshj4”不会。
Would such a regex be costly on CPU cycles? 这样的正则表达式会在CPU周期上造成高昂的成本吗?
r"\\bH[A-Za-z0-9]{9,19}\\b"
正是在寻找。
您可以使用lookarounds
来做到这一点。
re.findall(r'(?:^|(?<=\s))H[A-Za-z0-9]{9,19}(?=\s|$)', s)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.