gpt4 book ai didi

python - 需要 python 正则表达式来处理子字符串

转载 作者:太空宇宙 更新时间:2023-11-03 11:34:42 29 4
gpt4 key购买 nike

我想检查字符串(产品名称)中包含单词 beta 的位置,因为我不太擅长正则表达式编写:例如。

"Crome beta"
"Crome_beta"
"Crome beta2"
"Crome_betaversion"
"Crome 3beta"
"CromeBerta2.3"
"Beta Crome 4"

这样我就可以提出错误,这不是有效的产品名称,它是一个产品版本。我写了一个正则表达式,它能够计算出上面的字符串

parse_beta = re.compile( "(beta)", re.I)
if re.search(parse_data, product_name):
logging error 'Invalid product name'

但如果产品名称包含具有子字符串 beta init 的单词,如 “tibetans product”,那么上面的正则表达式将解析 beta 并引发错误。我想处理这种情况。任何人都可以向我推荐一些正则表达式。

非常感谢。

最佳答案

尝试 ((?<![a-z])beta|cromebeta) . (单词 beta 前面没有字母或完整单词 cromebeta)

我将添加来自 http://docs.python.org/library/re.html 的引述解释第一部分。

(?<!...) Matches if the current position in the string is not preceded by a match for .... This is called a negative lookbehind assertion. Similar to positive lookbehind assertions, the contained pattern must only match strings of some fixed length. Patterns which start with negative lookbehind assertions may match at the beginning of the string being searched.

关于python - 需要 python 正则表达式来处理子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7632986/

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