例えば、enenen-gben
は一致部分がen-gben
であるとします。前者の2つが繰り返されているので、これが欲しいものです。en
は、しかし、私は、私は理由がen
がen-gb
の部分文字列であるということだと思う、私は何を得るために何enenenen-gb
一致部分がen-gb
で、enen-gb
あるを与えるとき。しかし、私はそれを修正する方法を知らない。誰か私に良いREを与えることができますか?多くのおかげで
===================更新が==============
質問の背景がありますaccept-languageのhttpヘッダーのRegexを設計したいと考えています。だから私はここで(?:(da|en-gb|en|\*))(?!.*\1)(;q=(1|0(\.\d+)?))?(,(da|en-gb|en|\*)(;q=(1|0(\.\d+)?))?)*
を使用するda
、en-gb
、en
はちょうどいくつかのサンプルです。すべての言語に優先順位を表す値qを割り当てることができます。そして私はどんな繰り返しの言語タイプが起こることを望んでいない。これは私が欲しいものです。私は他の言語タイプとしてen-us
にen
を変更していると考えることができます
@anubhava私はあなたが使用する言語に関連するこの質問は考えません。私はちょうど異なる言語の種類を表すための正規表現を設計しています。実際には、私は言語の種類のセットを持っていると私はそれらを繰り返すことなく正規表現を使用して表現したいです。 –
[?(?:(da | en-gb | en | \ *))(?!。* \ 1(?!)) '](https://regex101.com/r/mN6qR7/1) 。 –
@WiktorStribiżew動作しません。あなたはこれを試しましたか? –