問題タブ [regex-lookarounds]

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 に答える
445 参照

regex - 2つの単語の間で3文字以上の単語を選択する方法

以下のテキストは、正規表現を使用して巨大なテキストからフィルタリングされています。ここでは、porc と pig を含まない犬と猫を含む文を見つける必要があります。

上記のものを見つけるために、正規表現を使用しました:

今、私は3文字以上の犬と猫の間の単語を見つけなければなりません.

私は試した :

うまくいきません。

誰でもそれを解決する方法について考えがありますか?

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

c# - 文字列内の特定の単語と一致しないC#正規表現

私はこの問題の解決策を見つけるために何時間も努力してきました。文字列があるとしましょう

一致するだけで無視するC#正規表現を作成しようとし2:1942:3Exclude1 4:32ますExclude2 5:23

つまり、Exclude1またはExclude2が前に付いている場合は、4:32またはn:nnと一致しません。ありがとう

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

regex - 条件に基づく正規表現の戻り値

正規表現で解析する必要がある 2 つの入力があります。

192.168.1.1:80 [172.16.1.1:8080]

また

192.168.1.1:80 [172.16.1.1]

:8080 が存在する場合は 8080 を返したいのですが、そうでない場合は 80 を返します。

これは可能ですか?

ありがとう

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

python - Python: RegEx 反復サブグループ検索

Tue 6:30 AM - 12:00 PM, 3:00 PM- 7:00 PMこれから取得したい文字列があります

私は試した、

しかし、これは常に最初のデュレーションのみを提供 するため、プログラムでコンマでデュレーションを分割しようとすることはできますが、それ自体で行う方法はありますが、表現に何かが欠けている["Tue", ["3:00 PM- 7:00 PM", "3:00 PM- 7:00 PM"]] ため、そうしたくありません。RegEx

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

regex - 文字列以外のすべての文字を正規表現する

先頭に文字列Send,.

を使用した先読みは機能し(?!)ません。これを行う別の方法は何ですか?

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

regex - 特定の文字列を除外する正規表現

私は現在、ユーザーがすべてのエンドポイントアカウントを管理できるようにするID管理ソリューションを実装しています。

現在、当社のパスワードポリシーは、デフォルトのWindows要件に一致しています。数字または特殊文字のいずれかを含める必要があります。

残念ながら、新しいシステムのパスワードポリシーでは、番号、特殊、または両方を要求できますが、「どちらか一方」は要求できません。ただし、新しいシステムでは、正規表現による検証が可能です。

現在、次の正規表現を無効にするように設定されています。

これはかなりうまくいきます。ただし、これを数字または特殊のいずれかを許可するように変更し、前の数字も許可しないようにします。これが私が試したことです:

しかし、これを機能させることはできません。数字/特殊グループは正常に機能しますが、単語グループは機能しません。文字列の最後に「パスワード」または何らかのバリエーションが使用されているかどうかは確認されますが、最初には使用されません。

助言がありますか?システムは標準(Perlスタイル)の正規表現を使用します。

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

.net - HTMLヘッダータグの順序を解析する最も効率的な方法

特定のページがヘッダータグ(h1、h2など)の順序を尊重していないかどうかを判断しようとしています。実際のところ、私はたくさんのページを解析できるようにしたいので、ヘッダーの順序に従わない各ページを返します。

私の最初の目標は、anの直後にh2以外のものが続くかどうかを確認できるようにすることでした。次のパターンで達成しました

以前の正規表現は私にとってはうまく機能していますが、実際には効率的ではなく、完璧にはほど遠いです。

ですから、そもそもこのパターンを改善する手助けをしたいと思います。可能であれば、私の古いパターンとそれがなぜそれほど非効率的であるかを比較する説明をしたいと思います。次に、パターンをアップグレード/変更して、ドキュメントヘッダータグの順序が尊重されるようにするという元の目標を達成したいと思います。

注: ベンチマークにRegexHeroを使用しています

正規表現は通常、HTMLを解析するためのベストプラクティスではないことは知っていますが、これは、ルックアラウンドやアトミックグループ化などをより効率的に使用するための演習です。ご理解のほどよろしくお願いいたします。

次のパターンと次のテキストをサンプルとして使用できます

パターン:

文章:

lol1 bla lol3 bla lol2 bla lol4

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

java - コメントに含まれていないグループで .replaceFirst を実行する Java で正規表現を作成するにはどうすればよいですか?

したがって、コメントをスキップしながら、トークンの最初のインスタンスを別のトークンに置き換える、変更された文字列を返す必要があります。これが私が話していることの例です:

元 .NET 開発者だったので、これは簡単だと思いました。次のように否定的な後読みを行うだけです。

しかしその後、Java ではこれができないことを知りました。したがって、中括弧が問題ないことを知ったとき、私はこれを試しました:

これは例外をスローしませんでしたが、コメントの @@ と一致しました。

この正規表現を Java 正規表現テスターでテストすると、期待どおりに動作します。私が思いつく唯一のことは、Java 1.5 を使用しているということです。Java 1.5 の正規表現エンジンにバグがある可能性はありますか? そうだとすると、Java 1.5 に、文字列を分割して再構築することなく、やりたいことをさせるにはどうすればよいでしょうか?

編集# を -- 演算子に変更しました。これは、正規表現が 1 つではなく 2 つの文字でより複雑になるように見えるためです。私は当初、「クエリをそのように変更するべきではありません!」というトピックから外れた議論を避けるために、クエリを変更していることを明らかにしませんでした。私がこれを行うのには非常に正当な理由があります。クエリ変更の推奨事項については議論しないでください。ありがとう

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

regex - sed 正規表現は後読みと先読みをシミュレートできますか?

すべての「裸の」URLをテキストファイルにキャプチャし、それらをに置き換えるsedスクリプトを作成しようとしています<a href=[URL]>[URL]</a>. 「ネイキッド」とは、アンカー タグ内にラップされていない URL を意味します。

最初に考えたのは、先頭に " または > がなく、後に < または " がない URL に一致する必要があるということでした。しかし、私が知る限り、sed には先読みや後読みがないため、「前も後ろも持たない」という概念を表現するのに苦労しています。

サンプル入力:

必要な出力の例:

3 行目は既に 内にあるため、変更されていないことに注意して<a href>ください。一方、1 行目と 2 行目の両方が変更されます。最後に、URL 以外のすべてのテキストが変更されていないことを確認します。

最終的に、私は次のようなことをしようとしています:

まず、次の URL が正しく一致して URL を削除することを確認しました。

次にこれを試しましたが、ファイル/入力の先頭から始まる URL と一致することはできません。

後読み/先読みをシミュレートするか、ファイルの先頭とファイルの終わりを明示的に一致させることにより、sedでこれを回避する方法はありますか?