Flunt icon indicating copy to clipboard operation
Flunt copied to clipboard

`Sugestão` Implementar comparações de string com char

Open OtavioVB opened this issue 2 years ago • 0 comments

Ao dar uma olhada no código de comparação de string's percebi que foi realizado comparações de uma lista de string's, com uma string utilizando o método contains. Veja a seguir o trecho do código:

public Contract Contains(IEnumerable<string> list, string val, StringComparison comparison, string key,
        string message = "{0} should contains the value {1}")
    {
        if (!list.Contains(val, comparison))
            AddNotification(key, string.Format(message, key, val));

        return this;
    }

No entanto, surgiu uma sugestão/dúvida, há algum método para comparar uma cadeia de caracteres com caracter? Provavelmente, seria de extrema utilidade para verificações de senhas, já que, normalmente, senhas mais fortes exigem pontuações, números, letras, entre outros, veja a seguir uma proposta de código:

public Contract HasChar(string text, char valComparison, StringComparison comparison, string key, string message = "{0} should contains the value {1}")
        {
            char[] chars = text.ToCharArray();

            var result = false;
            foreach (char charOfWord in text)
            {
                if (charOfWord == valComparison)
                {
                    result = true;
                }
            }

            if (result == false) AddNotification(key, string.Format(message, key, val));
        }
    ```
    É claro que pode ser aprimorado o código, mas estou abrindo a issue como uma sugestão.

OtavioVB avatar Aug 16 '22 23:08 OtavioVB