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

Объяснение сопоставления с образцом и переключателем
Я пытался объяснить разницу между операторами switch и сопоставлением с образцом (F #) нескольким людям, но я действительно не мог объяснить это хорошо ... большую часть времени они просто смотрят на меня и говорят «так почему? не надо просто...
13599 просмотров
schedule 28.05.2023

OCaml: сопоставить выражение внутри другого?
В настоящее время я работаю над небольшим проектом с OCaml; простой упрощатель математических выражений. Я должен найти определенные шаблоны внутри выражения и упростить их, чтобы количество скобок внутри выражения уменьшилось. До сих пор мне...
35304 просмотров
schedule 01.09.2022

Определение типа на лету в ООП-конструкции OCaml
Я изучаю ООП-конструкции OCaml и частично реализовал это сегодня, пока не понял, что понятия не имею, как представить оператор полиморфного сопоставления без использования ключевого слова type вне объекта. class bar (param:string) = object (code)...
755 просмотров
schedule 23.11.2022

Как работает этот шаблон соответствия классов?
Я только что видел этот класс case в пакете Scala actors : case class ! [a](ch: Channel[a], msg: a) И в JavaDoc это описывает использование в следующем виде: receive { case Chan1 ! msg1 => ... case Chan2 ! msg2 => ... }...
1722 просмотров
schedule 05.02.2022

Типы данных сопоставления шаблонов и их вложенные имена в Haskell
У меня есть: data Color = Blue | Green | Red | White | Yellow deriving (Eq,Ord) А потом data Term = Color | ... data Bag = Bag { color :: Color ... } Теперь я хочу иметь возможность сопоставлять шаблоны, чтобы убедиться, что...
444 просмотров
schedule 27.02.2023

Сопоставление нескольких классов кейсов в 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...
91717 просмотров
schedule 05.03.2022

F#: Может ли кто-нибудь объяснить мою ошибку компилятора?
Кто-нибудь знает, в чем проблема с этим кодом? let rec Foo(a,b) = match a () with | None -> Some(b) | Some(c) -> Some(Foo(c,b)) Вот ошибка компилятора: «Несоответствие типов. Ожидается «а», но задан вариант «а»....
263 просмотров
schedule 05.05.2023

Эффективно находить последовательности цифр в длинных целых числах
Можно ли найти определенную последовательность в целом числе без преобразования ее в строку? То есть возможно ли выполнить некоторую форму сопоставления с образцом непосредственно для целых чисел. Я не думал об одном, но я продолжаю думать, что...
2211 просмотров

Сопоставление с образцом Seq в Haskell
Сопоставление с образцом — одна из самых элегантных возможностей Haskell. Недавно я работал над проектом, где мне нужна структура данных очереди, поэтому я использую Data.Sequence. Однако, похоже, мне придется отказаться от элегантности...
1670 просмотров
schedule 11.07.2022

Использование jQuery для поиска ключевых слов в строке
В php я использовал preg_match_all() для поиска ключевых слов (используя формат %keyword%) в строке, который прекрасно работает и возвращает массив всех найденных ключевых слов. То, что я хотел бы сделать, это сделать то же самое, используя jQuery...
1761 просмотров
schedule 27.08.2022

Scala: сопоставление необязательных групп регулярных выражений
Я пытаюсь сопоставить группу параметров в Scala 2.8 (бета-версия 1) со следующим кодом: import scala.xml._ val StatementPattern = """([\w\.]+)\s*:\s*([+-])?(\d+)""".r def buildProperty(input: String): Node = input match { case...
7030 просмотров
schedule 27.12.2022

Числовое сопоставление с образцом
Проект, который я исследую, требует сопоставления числового образца. Мои поисковые запросы не дали большого количества релевантных результатов, так как большинство результатов, как правило, связано с сопоставлением текстового шаблона. Идея состоит в...
1130 просмотров
schedule 09.05.2022

В OpenRasta возможно ли соответствие шаблона нескольким парам ключ/значение?
Возможно ли в OpenRasta иметь шаблон Uri, который позволяет отправлять массив значений одного и того же ключа и сопоставлять его с методом обработчика, принимающим массив параметров запроса. Пример: вернуть все контакты с именем Дэйв Смит из...
563 просмотров

Scala, соответствующая определенному узлу в xml
У меня есть xml, который выглядит так: val xml = <plugins> <plugin type="x">plugin x</plugin> <plugin type="y">plugin y</plugin> </plugins> Я пытаюсь написать оператор match , который находит плагин с...
643 просмотров
schedule 10.03.2023

Несколько F#, когда охранники используют шаблоны группировки при сопоставлении с образцом
почему этот код не работает и как заставить его работать? let id1 = 0 match p1, p2 with | Fluid, Particle id2 when id = id2 | Interface _, Particle id2 when id = id2 -> doSomething() ... Итак, возможно ли иметь несколько охранников в...
927 просмотров
schedule 02.11.2022

аргументы соответствия шаблону и выдавать сообщения об ошибках в облегченном скрипте Scala
Я пишу несколько простых scala-скриптов, которые начинаются с простого сопоставления шаблонов на args , например: val Array(path, foo, whatever) = args // .. rest of the script uses "path", "foo", etc. Конечно, если я укажу неправильное...
1594 просмотров

Как мне манипулировать деревьями синтаксического анализа?
Я играл с деревьями синтаксического анализа естественного языка и манипулировал ими по-разному. Я использовал Стэнфордские инструменты Tregex и Tsurgeon, но код беспорядок и плохо вписывается в мою среду, в основном Python (эти инструменты Java и не...
3690 просмотров

Использование регулярных выражений (regex) для замены выделенного текста в jQuery/JavaScript
В приведенном ниже примере текст выделяется с помощью jQuery. Как мы можем изолировать валюту, избавившись от других данных? Эта попытка использовать JavaScript replace не сработала: var symbol = $("div.price > h5 >...
67246 просмотров
schedule 31.05.2023

Проблема сопоставления строк с образцом
Представьте, что у нас есть длинная строка, содержащая подстроки «кошка» и «собака», а также другие случайные символы, например. cat x dog cat x cat x dog x dog x cat x dog x cat Здесь «x» представляет собой любую случайную последовательность...
394 просмотров
schedule 20.07.2022

Сопоставление с образцом эквивалентных переменных в Haskell, например, в Prolog
В прологе мы можем сделать что-то вроде следующего: myFunction a (a:xs) = ... То есть, когда 1-й аргумент myFunction совпадает с первым элементом списка во 2-м аргументе, эта функция будет оцениваться как ... . Теперь мой вопрос: как...
1401 просмотров