問題タブ [re2]

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

regex - How to Create a new metric in google data studio with count specific term in field

I've a field with tow distinct string foo and bar. I want to create a new calculated metrics based on this field where I only count the number of foo string. how do I do that ?

So far I've tried this but doesn't work :

COUNT(CASE WHEN REGEXP_MATCH(type,'foo.*'))

Not sure if my question is clear. please tell me if it's not.

Edit : I found this solution SUM(CASE WHEN Type = 'foo' THEN 1 ELSE 0 END) however I would love to know how to solve this issue with Regexp

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

regex - 正規表現を使用して行全体に条件付き書式ルールを適用する方法

テキストが含まれる列 A の任意のセルに条件付き書式を適用したかった0.0ので、次のカスタム書式ルールを作成しました。

ここに画像の説明を入力

ただし、ハイライトをセルだけでなく行全体に適用したいのですが、アイデアはありますか?

ここに画像の説明を入力

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

c++ - RE2 から完全な正規表現一致を取得するには?

RE2 を使用して一部のテキストの正規表現を照合していますが、結果の抽出に苦労しています。

私が欲しいのは:

テキスト: "Sample text"正規表現
: "p.*x"
テキストから完全な正規表現一致を抽出: "ple tex"

これをサポートする RE2 API の関数が見つかりません。PartialMatch は正規表現 (かっこでマーク) からグループを抽出するだけですが、私の正規表現はユーザーからのものです。また、各正規表現をグループに手動でラップしたくありません。これは、エレガントなソリューションのようには聞こえず、ユーザーが正規表現の先頭に修飾子を配置すると機能しないためです。これは非常に基本的な機能のように思えるので、これを行う明確な方法がないことに驚いています。

誰でもこれに対する解決策を知っていますか?

0 投票する
0 に答える
104 参照

javascript - RegExp: すべてのグループがキャプチャされるわけではありませんが、一致するすべてのグループが.. (debuggex.com の例)

テストケース:

ご覧のとおり、キャプチャできるグループは 3 つあります。

この正規表現に対してテストするための入力は次のとおりです。

上記のdebbugexのライブ例でわかるように、テキストは一致しますが..

1 グループと 3 グループのみがキャプチャされます。なぜ2ではないのですか?こちらも似合ってます..

Debuggex デモ

(RE2 正規表現エンジンを使用すると、バグは発生しません。興味がある場合: https://github.com/uhop/node-re2 )

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

java - 標準の単語境界を使用せずに、正規表現を使用して URL を単語として一致させる方法は?

正規表現で始まるかどうかに関係なく、URL を抽出するために re2/J を使用しています。かなり単純なパターンを使用していますが、

ただし、最初と最後に \b を追加しても、あまり役に立ちません。メールの一部である URL とまだ一致しています。

email@ example.com からのexample.comも一致します。私が避けようとしている何か。@は単語以外の文字と見なされるため、\b はそれを単語の境界として扱います。

この問題に対する適切な代替ソリューションはありますか?

編集:

URL を html アンカー タグに置き換えようとしていることに注意してください。実際に一致を探しているわけではありません。パターンと、キャプチャされたグループの置換を指定する必要があります。

0 投票する
0 に答える
57 参照

c++ - C++ で HTML ドキュメント内の多くの URL を (潜在的に) 変更する

HTML ドキュメントのコンテンツを含む文字列が渡され、ドキュメント内に含まれる URL の一部を変更する必要があります。変更が必要な URL は、次の形式で始まります。

<script src="https://foo.com/some/variable/path/to/file.js" ...

次のように変更する必要があります。

<script src="https://foo.com/some/variable/path/to/NEW/file.js" ...

私の現在のアプローチは、正規表現でGoogle の RE2の GlobalReplace 関数を使用することです。

"(?i)(<script\\s+(?:[^>]+\\s+)?src=[\"']https://foo\\.com/" "(?:.*?/)*?)(.*?\\.js[\"'][^>]*>)"

私が与えられた HTML の URL の一部が既に変更されていて、一部が変更されていない可能性があることに気付くまでは、これはほとんど機能します。前者はそのままにしておく必要があります。

質問: アップストリームで既に変更されている URL を変更せずに URL を変更する最も簡単な方法は何ですか?

シングルパスアプローチが不可欠です。

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

regex - Google データスタジオの計算フィールドを使用した正規表現

次の計算フィールドがありますが、機能しません。

私の目標は、「foo」という単語を含むすべての URL を合計することです。それは理にかなっていますか?私の間違いはどこですか?