Introdução
As conversas de rua podem ser realmente difíceis de entender, principalmente para os programadores, que não são conhecidos por serem muito idiotas.
É seu trabalho criar um intérprete para ajudar a todos nós a sobreviver no ambiente urbano.
Desafio
Dada uma frase em inglês como entrada, crie um programa ou uma função que determine se o resultado da sentença é positivo ou negativo.
A sentença conterá 0
a 2
palavras negativas. Como qualquer programador sabe, um duplo negativo resulta em positivo. Portanto, seu código deve gerar ou retornar um valor truthy / falsey de acordo com a seguinte regra:
No negative words -> truthy
One negative word -> falsey
Two negative words -> truthy
A lista de palavras negativas:
no
,not
,none
- Qualquer coisa que termina em
n't
never
,neither
,nor
nobody
,nothing
,nowhere
Há um caso extremo. Sempre que uma frase começa No,
, essa palavra não é tratada como uma palavra negativa ao determinar o resultado (ela conta para o número de palavras negativas, para que possa haver apenas mais uma).
A frase seguirá as regras gramaticais básicas (letras maiúsculas, pontuação) e conterá apenas palavras que podem ser encontradas em um dicionário (felizmente, isso não invalida o título da pergunta). A frase não conterá nomes próprios (desculpe, Dr. Não, você saiu).
Casos de teste
Verdade:
Yes.
It's noon.
Hello, World!
What is this?
Ain't no thang!
Never say never.
No, it's noon now.
Neither me nor you.
I didn't do nothing!
No, I am your father.
A non-alcoholic drink.
I can't get no satisfaction.
All your base are belong to us.
Falsey:
No.
No, no!
Not today.
Neither am I.
Don't do that!
That's no moon!
And none survived.
Is this not my car?
No man is an island.
Nosebleeds are no fun.
Nothing compares to you.
That's a no, I'm afraid.
No, I am not your mother.
A ironia aqui, é claro, é que alguns deles devem ser interpretados de maneira diferente. Mas ei, você não pode culpar o orador por não estar em conformidade com a nossa lógica.
Regras
As brechas padrão são proibidas. Isso é código-golfe , então seja conciso!
been
pena por uma sentença 100% negativa!