Как отфильтровать массив (используя регулярное выражение) в C# - PullRequest
0 голосов
/ 29 января 2020

Во-первых, я новичок в C#, это мой первый взгляд на кодирование за пределами HTML и CSS. В настоящее время у меня есть очень большой массив, и я хочу отфильтровать указанный массив, проверяя каждую строку, если в строке есть определенная буква (в этом случае, если в ней есть какие-либо из следующих букв (gkqmvwxz), то я хочу перейти от и продолжайте искать.

Как только я найду строку в массиве, которая работает, я хочу продолжать проверять самую длинную из возможных. (Это из видео Тома Скотта о 7-сегментных дисплеях, это было похоже на хороший вызов и он сделал это в javascript)

Мой код выглядит следующим образом

namespace Longest_Word_in_a_7_segment_display
{
    class Program
    {
        static void Main(string[] args)
        {
            string english = System.IO.File.ReadAllText(@"C:\Users\Max\Desktop\words.txt");
            char[] full = english.ToCharArray();



        }
    }
}

Я определил строку и преобразовал ее в массив, я просмотрел синтаксис регулярных выражений и попытался некоторые решения, но все они кажутся мне выше. Какой лучший способ начать изучать, как это сделать, чтобы я мог полностью понять это?

Ответы [ 2 ]

1 голос
/ 29 января 2020

Я бы предложил начать с основ. Боюсь, ты взял большой кусок пирога, чтобы справиться с этим. Если вы новичок в C#, вы только будете бороться и, возможно, сдадитесь в будущем.

Если вы не против начать обучение, есть Введение в C# с интерактивными уроками или C# Основы: разработка для абсолютных начинающих . Если бы я был тобой, я бы начал там или нашел бы другие учебники по Inte rnet.

0 голосов
/ 29 января 2020

Regex работает на string не на char[], я бы порекомендовал вам сделать следующее

string english = System.IO.File.ReadAllText(@"C:\Users\Max\Desktop\words.txt");
Regex regex = new Regex(@"\b\w*(g|k|q|m|v|w|x|z)\w*\b");
List<string> filteredWords = regex.Matches(english).Select(x=> x.Value).ToList(); ///Using System.Linq
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...