問題タブ [regex-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 投票する
1 に答える
166 参照

regex - さらに別の正規表現 - クエリ文字列を識別する方法

urlrewriting に urlrewriting.net を使用しています。正規表現について助けが必要です(まだ得られません....)。

合わせたい

  • www.mysite.com/restaurant-> マッチして " restaurant"を返す
  • www.mysite.com/restaurant?page=1-> マッチして " restaurant"を返す
  • www.mysite.com/restaurant?[SOME_RANDOM_QUERYSTRING]-> マッチして " restaurant"を返す
  • www.mysite.com/seattle/restaurant-> " seattle" と " " をrestaurant照合して返す
  • www.mysite.com/seattle/restaurant?page=1-> " seattle" と " " をrestaurant照合して返す
  • www.mysite.com/seattle/restaurant?[SOME_RANDOM_QUERYSTRING]-> " seattle" と " " をrestaurant照合して返す
  • www.mysite.com/seattle/restaurant-michelangelo→捕まえない
  • www.mysite.com/seattle/restaurant/sushiseattle-> " " と " restaurant" と " "sushiを照合して返す
  • www.mysite.com/seattle/restaurant/sushi?page=1seattle-> " " と " restaurant" と " "sushiを照合して返す
  • www.mysite.com/seattle/restaurant/sushi?[SOME_RANDOM_QUERYSTRING]seattle-> " " と " restaurant" と " "sushiを照合して返す
  • www.mysite.com/seattle/restaurant-michelangelo→捕まえない

ポイントは、クエリ文字列部分ではなく、URL のディレクトリ部分が必要なことです。問題は、私の Web 分析ツールから、人々が 2 つの単語で検索していることがわかります。どちらも都市 (シアトル) + カテゴリ (レストラン) を検索します。「シアトル レストラン」と都市 (シアトル) + レストランの名前 (restaurant-michelangelo) など。「シアトルレストラン・ミケランジェロ」。これは階層構造ではないため、構造的な観点から見ると、これはもちろんごちゃごちゃです。理想的な世界では、階層は都市 -> カテゴリ -> レストランです。しかし、私はまだこの検索動作を私の URL 構造に取り入れたいと思っています。同時に、国内のすべてのレストランをリストしたページもあります。

正規表現は非常に高価になる可能性があるため、正規表現の作成方法と最も効率的な作成方法について助けてください。

ありがとう

トーマス

0 投票する
4 に答える
575 参照

javascript - RegExp の「グリーディ」モードが機能しないのはなぜですか?

挙動がわかりません。そのような例があり、html コメントをキャッチする必要があります。

2 番目の正規表現regex2は正常に機能し、必要なものを正確に出力します。最初のショーnull。そして、私は違いを理解していません。RegExpressions<!--[.]*--><!--.*-->同じ意味です - 「<!--改行を除く任意の文字を 0 からできるだけ多く取り、」で終了し-->ます。しかし、2番目の場合は機能し、最初の場合は機能しません。なんで?

アップデート。コメントを読み、更新しました。

そのため、限定された一致変数を使用して、何にでも一致させることができます。正規表現を正しく使用するには、どの方法を使用する必要がありますか? それらの有無に[]かかわらず?どちらも正しい出力を提供します。

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

java - 正規表現の奇妙な動作

正規表現について質問があり、答えようとすると、別の奇妙なことがわかりました。

これはYYを印刷します。どうして??

そしてこれはYXYを印刷します

気が進まない正規表現が「X」文字と一致しないのはなぜですか?ありますが"noting"X"nothing"、なぜ最初に3つのシンボルに一致せず、2つに一致し、次に3つではなく1つに一致するのでしょうか。2番目の正規表現は"nothing"sにのみ一致し、一致しませんXか?

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

regex - メール ID 一致の正規表現の作成に関するヘルプが必要

私は正規表現に非常に慣れていないため、助けが必要です。

送信者に電子メールIDがある場合、メッセージヘッダーに3つの電子メールIDのいずれかが見つかった場合にのみ一致する正規表現を探しています(a@gmail.com、b@gmail.com、およびc@rediffmail.comとしましょう)ヘッダーの場合、一致しないはずです。

この種の正規表現を作成することは可能ですか? はいの場合は、アドバイスしてください。

よろしく、 ゴルディ baharja@goldytips.info

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

java - Java正規表現非貪欲が機能しない

次の HTML ソース コードから文字列 "Active" を含むアイテムを抽出しようとしています。アクティブなアイテムが最初になる場合があることに注意してください。

これが私が使用しているREGEXです(貪欲になろうとしています):

Pattern.CASE_INSENSITIVE| を使用 パターン.DOTALL | パターン.MULTILINE

2 番目のソース コードではなく、ソース コード全体を抽出します: ... 。

HTML ソース コード:

あなたの助けに感謝します!

0 投票する
14 に答える
176351 参照

regex - 正規表現のクレジットカード番号テスト

正規表現パターンがクレジットカードと一致する1つのアプリケーションをテストしているので、そのような番号を強調表示する必要があります。テスト用のテストクレジットカード番号を作成するために、サイトhttp://regexpal.com/を使用しています。私の要件は、それらの間に「-」および/または「、」を含むことができる有効なクレジットカード番号を持っていることです。サイトを使用してテストしたときのような番号を作成することに成功しませんでした

http://regexpal.com

以下のシナリオでいくつかのクレジット番号が必要です

  1. 任意の桁の間に「-」を含めることができる有効なクレジットカード番号。
  2. 任意の桁の間に「、」を含めることができる有効なクレジットカード番号。
  3. 任意の桁の間に「、」または「-」の組み合わせを持つことができる有効なクレジットカード番号。
0 投票する
3 に答える
255 参照

regex - Perl の正規表現は貪欲ではありません

perlサブルーチンの定義を開始するperlコードに一致するように、perlで正規表現を書いています。これが私の正規表現です:

$regex は、サブルーチンを開始するコードに一致します。また、$1 のサブルーチンの名前と、サブルーチン名と $2 の最初の左中括弧の間の空白とコメントをキャプチャしようとしています。私に問題を与えているのは2ドルです。

次の perl コードを検討してください。

この perl コードを文字列に入れて $regex と照合すると、$2 は "# This is comment 3.\n" であり、必要な 3 行のコメントではありません。正規表現は 3 行すべてのコメントを貪欲に $2 に入れると思っていましたが、そうではないようです。

$regex が機能しない理由を理解し、単純な代替を設計したいと思います。以下のプログラムが示すように、動作するより複雑な置換 ($re3) があります。しかし、なぜ $regex が機能しないのかを理解することが重要だと思います。

上記の perl スクリプトの出力は次のとおりです。

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

regex - RegEx/XSDのより長い制限された文字列内の1文字に一致する

これがどれほど実行可能かはわかりませんが、XSDのデータ型に取り組んでおり、私がやろうとしていることの1つは、姓にハイフンを使用できるようにデータ型を拡張することです。したがって、これはとに一致する必要がSmith FryありSafran-Foerます。さらに、チェックする文字列の長さを100文字(または101文字)以下に制限したいと思います。私の正規表現は元々次のとおりでした。

これで、これを分割して、次のように両側に50文字を任意に許可することができることがわかりました。

しかし、それは不潔に思えます。次のようなことをする方法はありますか?

私が探しているものを尋ねる別の方法は、「1つ以下のハイフンを含む0から100までの文字列を一致させる」です。

ありがとう!

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

regex - なぜこの正規表現は貪欲ではないのですか?

これは、IPアドレスと一致するPerl正規表現からのフォローアップです。問題を正しく解決する方法を示したかったのですが、予期しない動作に遭遇しました。

2番目の一致は失敗します。IPv6アドレス内ですでに一致しuse re 'debugcolor'ていることを明らかにします。私は貪欲をスイッチオフしなかったので、これは私を驚かせます。私はそれがまですべてをむさぼり食うことを期待しました、そしてそれから分離する結腸とそれに続くものと一致します。:($port_re):5?]

なぜこれが起こるのですか、そして救済策は何ですか?

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

regex - Actionscript 3 RegExp 量指定子が正しく機能していないように見えますか?

Actionscript 3 では、正規表現を使用してユーザー入力をテストしようとしています。次のコードは、文字列をテストします。

文字列シーケンスの先頭に + または - 記号を許可することになっていますが、1 つだけです。ただし、 ? を無視しているようです。任意の数の + または - 記号を受け入れる量指定子。

私はこの値の配列でテストしています:

次の結果では、5 番目の項目が false になっているはずです。ここで何が欠けていますか?

これらの正規表現の順列を試してみましたが、まったく同じ結果が得られました。