問題タブ [greedy]

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.

0 投票する
3 に答える
1080 参照

regex - 正規表現は怠惰な振る舞いをしている、貪欲であるべき

デフォルトでは、私の正規表現は私が望む貪欲な動作を示すと思いましたが、次のコードにはありません:

出力:

単純にキーワードを長さの降順で並べ替えれば、この小さな例でも機能することがわかりましたが、

  • これが期待どおりに機能しない理由を理解したいのですが、
  • 私が取り組んでいる実際のプロジェクトでは、正規表現にさらに多くの単語が含まれており、それらをアルファベット順に保つことが重要です。

だから私の質問は、なぜこれが怠惰なのか、どうすれば修正できるのか?

0 投票する
2 に答える
4843 参照

user-agent - NetLogoで迷路の壁を作成するにはどうすればよいですか?

2つの出口がある5x5グリッドを作成し、その中にいくつかの壁を配置しようとしています。つまり、迷路や迷路を作りたいのです。

境界線を太くしたり、パッチの片面だけの色を変えたりする方法はないかと思いました。

私はエージェントを1人だけ中に入れて、いくつかのポイントで彼に報酬を与えることによって彼に出口を見つけさせたいと思います。(Q学習アルゴリズム)

誰かアイデアがありますか?

これが不可能な場合は、同等のコードを提案できますか?

これが私が作成したいものの例です:

代替テキスト

尋ねられたように、私は自分の仕事のいくつかを投稿しました(これを手動で行うのは非効率的ですが)。これが私がこれまでに持っているものです:

繰り返しますが、これは非効率的な方法です。この方法を続行する場合、4つのパッチを1つにマージして、エージェントを内部に入力して中央に配置するにはどうすればよいですか?

前もって感謝します。

0 投票する
2 に答える
4864 参照

algorithm - ポイントカバーリング問題

私は最近、テストでこの問題を抱えていました: 一連の点m (すべて x 軸上) と 端点 [ l, r ] (再び x 軸上)を持つ線のセットnが与えられた場合、次の最小サブセットを見つけます。 nすべての点が線で覆われるようにします。解が常に最小サブセットを見つけることを証明してください。

私が書いたアルゴリズムは、次のようなものでした: (たとえば、行は、左端点が位置 0 で右端点が位置 1 の配列として格納されているとします)

これが常に最小解を見つけるかどうかはわかりません。これは単純な貪欲なアルゴリズムなので、私の直感ではそうはならないと言われていますが、この点で私よりもはるかに優れている友人の 1 人は、この問題に対して、このような貪欲なアルゴリズムは常に最小の解を見つけると言っています。私が常に最小の解決策を見つけることを証明するために、私はおそらくまったく真実ではないという仮定を立てた矛盾による非常に手の込んだ証明を行いました。自分がしたことを正確に忘れます。

これが最小限の解決策ではない場合、O(n!) 時間のようなものよりも短い時間でそれを行う方法はありますか?

ありがとう

0 投票する
1 に答える
256 参照

regex - 正規表現では、それは怠惰または貪欲ではないと呼ばれていますか?

私はもともとそれを貪欲ではないと聞いた。それから、「ウェブ上の」参照で、私はそれが怠惰と呼ばれるのを見ました。どっち?

0 投票する
1 に答える
388 参照

regex - preg_match を使用して特定のサフィックスを持つタグを見つける

PHP で正規表現を使用して、特定の方法で終了するタグを探しています。しかし、私の試みはすべて、結果が多すぎるか少なすぎるかのどちらかです。

たとえば、次の文字列では、'suffix' で終わるタグにある 'bar' に一致させたいと思います。

ただし、上記の行は 'foo> になります

0 投票する
2 に答える
2756 参照

python - Pythonreでの欲張り対非欲張りマッチング

これがPython(2.6.5)のバグであるか、正規表現を作成する能力であるか、またはパターンマッチングの理解であるかを発見するのを手伝ってください。

(考えられる答えは「Pythonをアップグレードする」であることを受け入れます。)

私はYubikeyトークンを解析しようとしており、オプションの追加機能を考慮に入れています。

この正規表現を使用して、オプションの追加機能なしで(つまり、2つのキャプチャグループに一致するもののみを含む)トークンを一致させると、一致は失敗します。

ただし、最初のグループを欲張りでないものにすると、次のようになります。

成功します。

それで、OK、それは機能していますが、これら2つの正規表現の最終結果の唯一の違いはパフォーマンスだと思いました。

ExpressoとRegexCoachは、どちらも両方のパターンが好きです。

私は何を逃しましたか?


これが私がテストしている2つの文字列です。

オプションの追加機能(失敗する可能性のあるもの)はありません:

オプションのエクストラを使用する場合(これまでのところ失敗していません。実際のタブはここでは「_」として表示されます):


Alex Martelliからの提案を使用して再現しようとしましたが、生のPython環境では失敗しないので、コードを再検討します(実際には、yubikey-pythonをハッキングしています)。一日かそこらで報告します。


皆様、お詫び申し上げます。問題を再現できません。getpassそれが起こったとき、私は;を介して入力を読んでいました。偶発的な外国のキーストロークが邪魔になったのではないかと思います。

質問を閉じます。質問に賛成した人が投票を削除したい場合、それは公正です。

本当にごめんなさい。

0 投票する
2 に答える
823 参照

c# - ページからタイトルを取得するための貪欲でない正規表現

C# を使用して Web ページのタイトルを取得したいと考えています。だから私はそのページを要求し、応答ページを取得し、正規表現を使用してタイトルを抽出しています。

文字列正規表現 = @"(?<=)([\s\S]*)(?=)/";

しかし、次のような2つのタイトルを持つサイトを見ました

したがって、上記の正規表現を使用すると、タイトルが次のようになります

正規表現が貪欲であることは知っています。「ページタイトル」が得られるように正規表現を貪欲でないものに変更するにはどうすればよいですか?

0 投票する
2 に答える
69 参照

regex - 正規表現のトラブル、私が望むものと一致しないようです

私はこれが真ん中のどこかにあるジバーリッシュなデータをたくさん持っています:

そして、これから抽出したいと思いhGosI8rBVe8ます。抽出したいものは任意の長さにすることができ、大文字/小文字と数字を含めることができることに注意してください。これは私がこれまでに試したことです:

と:

しかし、彼らは私が返したいものの終わりに「」を過ぎて一致する方法を続けます。これは*(貪欲な)ためだと確信しています...しかし、私が返したいものは可変長の。

どんな助けでもありがたいです、乾杯。

0 投票する
3 に答える
40417 参照

c# - C# 正規表現での貪欲、非貪欲、すべて貪欲なマッチング

次の例ですべての一致を取得するにはどうすればよいですか。

PS:すべての一致を一般的な方法で行いたいです。上記の例はほんの一例です。

0 投票する
2 に答える
61 参照

regex - 正規表現の問題

デモ 正規表現をテストしています。一致結果が気になります。

記号 * は緑色です。私のオプションでは、結果は以下のように 1 つの結果にのみ一致する必要があります。

しかし、結果は私が期待するものではありません.誰かが私がそれを説明するのを手伝ってくれます,ありがとう?