Вопросы с тегом 'pattern-matching'

Используйте этот тег для вопросов о тестировании, имеет ли структура данных определенную форму или содержит определенные значения в определенных местах. Многие функциональные языки предоставляют конструкции сопоставления с образцом. У большинства вопросов в этом теге также должен быть тег для языка, на котором вы программируете. НЕ ИСПОЛЬЗУЙТЕ ЭТУ ТАГ ДЛЯ РЕГУЛЯРНЫХ ВОПРОСОВ ВЫРАЖЕНИЯ, ИСПОЛЬЗУЙТЕ [regex] INSTEAD; аналогично, для сопоставления с образцом (globbing) в POSIX-подобных оболочках используйте [glob].
13 отв.

Как определить, повторяется ли строка в Python?

Я ищу способ проверить, повторяется ли данная строка для всей строки или нет. Примеры: [ '0045662100456621004566210045662100456621', # '00456621' '0072992700729927007299270072992700729927', # '00729927' '00144300...
07 апр. '15 в 2:02
11 отв.

Как использовать обратные или отрицательные подстановочные знаки при сопоставлении шаблонов в оболочке unix/linux?

Скажем, я хочу скопировать содержимое каталога, исключая файлы и папки, имена которых содержат слово "Музыка". cp [exclude-matches] *Music* /target_directory Что следует делать вместо [exclude-matches] для выполнения этого?
20 окт. '08 в 0:16
2 отв.

В чем разница между "x is null" и "x == null"?

В С# 7 мы можем использовать if (x is null) return; вместо if (x == null) return; Есть ли преимущества использования нового способа (прежний пример) по сравнению со старым? Семантика отличается? Это просто вопрос вкуса? Если нет, когда я долже...
18 нояб. '16 в 14:49
2 отв.

Что делает `: _ *` (символ подчеркивания двоеточия) в Scala?

У меня есть такой код из этого вопроса: def addChild(n: Node, newChild: Node) = n match { case Elem(prefix, label, attribs, scope, child @ _*) => Elem(prefix, label, attribs, scope, child ++ newChild : _*) case _ => error("Can only add chi...
19 мая '11 в 0:35
11 отв.

Ввод символов символа в строке

Как я могу подсчитать количество "_" в строке типа "bla_bla_blabla_bla"?
06 окт. '10 в 0:28
4 отв.

Использование операторов сравнения в системе соответствия шаблону Scala

Можно ли сопоставлять сравнение с помощью системы сопоставления шаблонов в Scala? Например: a match { case 10 => println("ten") case _ > 10 => println("greater than ten") case _ => println("less than ten") } Второй аргумент...
18 окт. '09 в 19:48
3 отв.

Как соответствие шаблонов в Scala реализовано на уровне байт-кода?

Как соответствие шаблонов в Scala реализовано на уровне байт-кода? Это как серия конструкций if (x instanceof Foo) или что-то еще? Каковы его последствия для производительности? Например, с учетом следующего кода (из Scala By Example pages 46-48)...
16 апр. '09 в 2:32
5 отв.

Совпадение групп Ruby Regexp, назначение переменных в 1 строке

В настоящее время я пытаюсь перерисовать строку в несколько переменных. Пример строки: ryan_string = "RyanOnRails: This is a test" Я сопоставил его с этим регулярным выражением с тремя группами: ryan_group = ryan_string.scan(/(^.*)(:)(.*)/i) ...
16 февр. '12 в 3:50
9 отв.

Что такое "сопоставление образцов" на функциональных языках?

Я читаю о функциональном программировании, и я заметил, что Pattern Matching упоминается во многих статьях как одна из основных функций функциональных языков. Может кто-нибудь объяснить разработчику Java/С++/JavaScript, что это значит?
23 марта '10 в 20:57
7 отв.

Как сопоставить шаблон с использованием регулярного выражения в Scala?

Я хотел бы найти совпадение между первой буквой слова и одной из букв в группе, такой как "ABC". В псевдокоде это может выглядеть примерно так: case Process(word) => word.firstLetter match { case([a-c][A-C]) => case _ => }...
09 янв. '11 в 1:50
3 отв.

Сопоставьте классы нескольких случаев в scala

Я выполняю сопоставление с некоторыми классами case и хотел бы обрабатывать два случая аналогичным образом. Что-то вроде этого: abstract class Foo case class A extends Foo case class B(s:String) extends Foo case class C(s:String) extends Foo def m...
03 дек. '09 в 8:00
1 отв.

Почему совпадение шаблонов в Scala не работает с переменными?

Возьмем следующую функцию: def fMatch(s: String) = { s match { case "a" => println("It was a") case _ => println("It was something else") } } Этот шаблон хорошо сочетается: scala> fMatch("a") It was a scala> f...
16 авг. '11 в 15:12
0 отв.

Elm Compiler работает вечно, компьютер просто становится горячим

Я не уверен, что вызывает эту проблему, но в проекте, который я создаю, компилятор занимает несколько часов, чтобы скомпилировать модуль. Общий размер моей кодовой базы составляет 352 КБ, но ни один из модулей не превышает 10 КБ. Я использую собствен...
03 мая '16 в 22:16
8 отв.

Как выбрать линии между двумя шаблонами маркеров, которые могут возникать несколько раз с помощью awk/sed

Используя awk или sed, как я могу выбрать строки, которые происходят между двумя разными маркерными шаблонами? Может быть несколько разделов, помеченных этими шаблонами. Например: Предположим, что файл содержит: abc def1 ghi1 jkl1 mno abc def2 ghi...
01 авг. '13 в 11:25
3 отв.

Поддерживает ли PostgreSQL "нечувствительные к акценту" сортировки?

В Microsoft SQL Server можно указать "нечувствительную к акценту" сортировку (для базы данных, таблицы или столбца), что означает, что это возможно для запроса типа SELECT * FROM users WHERE name LIKE 'João' чтобы найти строку с именем Joao. Я ...
13 июня '12 в 0:19