問題タブ [pattern-matching]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - Scalaで範囲を一致させることはできますか?
Scalaで値の範囲を一致させることは可能ですか?
例えば:
m
が0 ~ 10 のtrue
場合は になりますが、それ以外の場合は false です。t
もちろん、これは少しうまくいきませんが、そのようなことを達成する方法はありますか?
performance - Scala リスト再帰のパフォーマンス
この質問は、Scala がリストを使用してパターン マッチングと再帰を行う方法と、そのパフォーマンスに関するものです。
リストを再帰する関数があり、コンスでマッチングを行う場合、たとえば次のようになります。
ハスケルでは:
Haskell などと同じセマンティクスを使用しています。Haskell の実装については疑問の余地はないと思います。それは単にリストを扱う方法だからです。リストが長い場合 (数千ノードのリストを操作することになります)、Haskell は点滅しません (私は想像しますが、試したことはありません)。
しかし、私が Scala で理解していることから、match ステートメントは unapply extractor メソッドを呼び出してリストをコンスで分割し、例をリストに何もしない関数に拡張します。
ハスケルでは:
apply extractor メソッドを呼び出して、cons をまとめます。長いリストの場合、これは非常に高価になると思います。
説明のために、私の特定のケースでは、文字のリストを再帰してさまざまなものを蓄積したいと考えています。ここで、入力文字列は数十キロバイトまでです。
長いリストを再帰したい場合、再帰の各ステップで本当にコンストラクタとエクストラクタを呼び出すのでしょうか? それとも最適化はありますか?またはそれを行うより良い方法はありますか?この場合、いくつかのアキュムレータ変数が必要になり、何もしないリストを再帰するだけではないことは明らかです...
(私の Haskell を許してください、私は 2 年間 1 行も書いていません。)
(そして、はい、末尾再帰に行きます。)
php - このタイプの構造にどのように合わせるのですか?
私は解析を行っており、一致させてからnullにしたいテキストの種類は次のとおりです:-
を含むすべての行に一致させたい "<tr class="label-BGC"><td colspan="4">any text</td></tr>"
ここでの夕方、私の脳のバッテリーは完全にダウンしています
私がやろうとしていることは:-
$parsed には、解析中のデータ全体が含まれています。
私のコードは機能していません 誰かがここでいくつかの提案を手伝ってくれます!!!
algorithm - 文字列のリストで共通の部分文字列を検出するにはどうすればよいですか
たとえば、一連の文字列が与えられた場合:
これらが 3 つのファイル セットであることを検出できるようにしたいと考えています。
- 全体[1,2]
- J27[赤、緑]P[1,2]
- JournalP[1,2][赤、緑、青]
この問題にアプローチする既知の方法はありますか?これについて読むことができる公開された論文はありますか?
私が検討しているアプローチは、文字列ごとに他のすべての文字列を見て、共通の文字と異なる文字がどこにあるかを見つけ、最も共通している文字列のセットを見つけようとすることですが、これはあまり効率的ではなく、偽陽性。
これは、 「ファイル名に含まれる一般的な文字列のグループを検出する方法」と同じではないことに注意してください。これは、文字列には常に一連の数字が続くことを前提としているためです。
c - PCRE を使用してすべての一致グループを取得するにはどうすればよいですか?
私は C の使用経験がなく、マッチを取得するには PCRE を使用する必要があります。
これが私のソースコードのサンプルです:
このデモでは、出力は次のとおりです。
0: From:regular.expressions@example.com
1: regular.expressions
2: example.com
すべての一致を出力したい。どうやってやるの?
sql - SQL ServerのLIKE演算子で使用するために文字列をエスケープするにはどうすればよいですか?
@
文字列をリテラルと見なすc#の記号に似たSQLServerで機能するものを探しています。例えば:
@が文字列にどのように影響し、すべての文字をそのまま使用するかに注意してください。
これが可能かどうかはわかりませんが、これが私の問題であり、これを解決するためのより良い方法があるかもしれません。次の基本的なクエリについて考えてみます。
私の問題は、彼らが私のlike句に影響を与える可能性のある%
、_
またはその他の特殊文字を入れているかどうかです。'startswith'関数のように一致を機能させたい。それで、@ searchTextに適用して、これを文字通りに解釈できるものはありますか、それとも私が考えていないより良い解決策があるのでしょうか?
編集:私は解決策がクライアント側のクリーニングになることを望んでいません。クリーンアップで渡されるデータに依存せずに動作するには、このストアドプロシージャが必要です。
regex - 中括弧内のコンテンツの正規表現
中括弧内のコンテンツに一致する正規表現はありますか。たとえば、次のようにします。
{'key': {'a': [1,2,3]}}と{'a': [1,2,3]}に一致させたいのですが、 {'key': { ' a' には一致させません: [1,2,3]}
sql-server - %% での SQL LIKE 演算子の使用
検索条件にユーザー入力に基づいてテーブルを含める/除外するSQL Serverでクエリを作成する必要がありました。
2 つのテーブルがTABLE_A
ありTABLE_B
、 columnKEYCOLUMN_A
とCOLUMN_A
in TABLE_A
、 columnsFKCOLUMN_B
とCOLUMN_B
inがあるとしますTABLE_B
。
そして、次のようなクエリ:
ユーザーが入力しない場合はSEARCH2
、検索する必要はありませんTABLE_B
。IF ELSE
しかし、これは条項を意味します。また、クエリ内の「オプションの」テーブルの数が増えると、順列と組み合わせも増え、IF
andELSE
ステートメントが多くなります。
代わりに、ステートメントをそのままにしておくことにしました。SEARCH2
が空の場合、クエリは事実上次のようになります。
SQL オプティマイザLIKE %%
は、条件自体を削除するのと同じくらい良いことを認識できますか?
syntax - "match ... true -> foo | false -> bar" は Ocaml で特別な意味を持っていますか?
コードを読んでいる Ocaml プロジェクトのさまざまな場所で、次の構成要素に遭遇しました。
一見すると、通常のif
ステートメントのように機能します。一見すると、それは.. 通常のif
ステートメントのように機能します。ぱっと見、SOさんにお願いすることにしました。if
この構文には特別な意味がありますか、それとも特定の場合に重要なステートメントとの微妙な違いがありますか?