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

regex - re2 での前向き先読み (?=regex) の使用

私はre2(?=regex)に少し慣れていないので、 JS、C++、またはGoの PCRE スタイルのような前向き先読みを使用する方法を理解しようとしています。

ここに私が探しているもののいくつかの例があります。

JS:

パイソン:

  • 注: どちらの例も一致します'foo bar '

どうもありがとう。

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

regex - Gmail で正規表現を使用してすべての Git Sendmail カバー レターを検索する

私は取得しようとしています...

次のようなものに一致します。

...Gmail のルールとして機能します。Gmail が使用する PCRE と RE2 の違いにより、機能していないと推測しています。

カバーレターを独自のラベルにフィルタリングできるようにするトリックはありますか?

最初のビットは機能しますが、[vV] または (0+/\d+) 自体は好きではないようです。

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

regex - 文字列RE2 Googleシートに対する正規表現の負のクエリ

私はGoogleシートを作成していますがREGEXREPLACE、数時間前に機能と戦っています。一般的には次のとおりです。

そして、私はこれが欲しい:

で抽出しようとしましたがREGEXEXTRACT(string1,"@[^\s]+")、この関数はグローバルには機能しませREGEXREPLACEん。 どうやってするか?@abc@bcd""@[^\s]+

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

regex - golang のネストされたグループの正規表現の問題

次のおもちゃの例を考えてみましょう。名前がasingle で区切られた一連の文字である正規表現と Go で一致させたいので、有効ですが、#そうではありません。次の 2 つの方法で正規表現をコーディングできます。a#a#aaaa#a##a

これらの両方が機能します。ここで、単一のスラッシュで区切られた一連の名前を照合する、より複雑なタスクを考えてみましょう。上記のように、次の 2 つの方法でコーディングできます。

ここで、N は ^ と $ を取り除いた名前の正規表現です。N には 2 つのケースがあるため、4 つの正規表現を使用できます。

問題は、文字列と照合すると"aa#a#a/a#a/a"、最初の 1 つが失敗し、残りの 3 つのケースが期待どおりに機能するのはなぜですか? つまり、最初の正規表現が一致しない原因は何ですか? 完全なコードは次のとおりです。

驚くべきことに、それは印刷されますfalse true true true

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

regex - : で終わる文字列または正規表現ではない文字列を一致させる方法

re2.h を使用し、部分一致を行っています。

入力文字列が「123.45.34.5:8080」であるとします。「123.45.34.5」と「8080」が返されます。

入力文字列が「123.45.34.5」であると仮定します。「123.45.34.5」と「」も返されます。正規表現の書き方は?次のコードは機能しません。

ありがとう、

アップデート

これで、次のコードが機能します。

しかし、質問があります。なぜ " string IPRegex = "([^ \r\t:]*?)"; " が機能しないのですか? *はどう違いますか?* ?

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

regex - Negate match for word in the beginning of string in RE2 syntax?

Let's say that I have following strings:

  • mail to
  • tel:+358123456
  • http://www.google.fi
  • mailto:foo@bar.fi
  • hello world
  • telephone
  • elephant
  • penny
  • link
  • owl

How can I find only strings that do not start with 'tel:', 'http://' and 'mailto:' in RE2 syntax?

I've tried following with following syntax, but it filters out all of them:

edit: RE2 syntax does not support negative lookbehind/lookahead.