Вы можете передать текст в виде списка (этот сайт пример из моего предыдущего ответа :))
import requests
from bs4 import BeautifulSoup
res = requests.get('http://www.snapdeal.com/products/computers-laptops?sort=plrty&')
soup = BeautifulSoup(res.text)
elements = soup.find_all('div', {'class': 'lfloat'}, text=re.compile(r'(14|4)')) # | means 'or'
print elements
гравюра [<div class="lfloat">(14)</div>, <div class="lfloat">(4)</div>, <div class="lfloat">(45)</div>]
Итак, вы можете использовать: soup.find_all(class_="label",text=re.compile(r'(Fiscal|yeah)))
в вашем случае
Чтобы найти точное совпадение, вы можете перейти text
в список: soup.find_all(class_="label",text=['Fiscal', 'yeah'])
«Найти фискальные и НЕ да» логик может быть покрыт с помощью этого: soup.find_all('div', {'class': 'lfloat'}, text=re.compile(r'(Fiscal|[^yeah])'))
(не уверен, что здесь)
Это соответствует только * всему тексту *, а не частично. –
обновил ответ –
Это только ответы на часть вопроса, но да, регулярное выражение, которое соответствует конкретным комбинациям, которые ищет OP (или исключает конкретные комбинации), является ответом. –