我正在尝试在一系列衣服中自动检测胸罩的尺寸。虽然我只提取了胸罩项目,但我现在正在提取尺寸信息,我想我差不多做到了(多亏了stackoverflow社区)。然而,我在另一篇文章中找不到一个特殊的案例
我正在使用:
regexp = re.compile(r' \d{2,3} ?[a-fA-F]([^bce-zBCE-Z]|$)')
所以
如果描述开头没有空白,则可能出现空白
两个或三个数字
是否有其他可能的空白
A和F之间的任何字母(小写或大写)
然后另一个字母表示两个特殊情况AA和FF或字符串的结尾
我的问题是,有没有办法让第二个字母与第一个字母(AA或FF)匹配,因为在我的例子中,我的代码输出了一些不存在的BA和CA大小
示例:
不工作:
“bh sexig top matchande h&;m genomskinligt parti svart detaljer 42 basic plain”返回“42 ba”,而不是未找到
“彪马,运动bh,strl:34cd,svart/grå”,我猜客户的意思是c/d
工作罚款:
“维多利亚的秘密,bh,strl:32c,gul/vit”返回“32c”
“粉红维多利亚秘密bh 75dd勃艮第”返回“75dd”
谢谢
你可以用
解释
\d{2,3} ?
匹配空格、2-3位数字和可选空格([a-fA-F])\1?
在组1中捕获a-fA-F,然后可选地返回到组1(?![a-fA-F])
负前瞻,断言右边的不是a-fA-FRegex demo
相关问题 更多 >
编程相关推荐