2017-01-18 9 views
0

シンボル「!」と一致させたい最初のもののみx回。私は正規表現のチートシートを見ましたが、関連する例は見つかりませんでした。正規表現に一致する "?" x回

私の現在の正規表現:たとえば

[!]{1} 

、私は最初の3にマッチさせたい場合は、「!」シンボルや空の文字列に置き換えます。

入力:"!!dd!!dd!!"

出力:"dd!dd!!"

+0

除く、次の文字をすべてをキャプチャします。あなたがsedを使っていたら、s/^([^!] *)!([^!] *)!([^!] *)!(。*)$/\ 1 \ 2 \ 3 \ 4/"です。 "([^!] *)"は、すべての非 "!" charsのセット。 –

+0

あなたの問題は、正規表現なしで、つまり単純なパーサを使って、より簡単に解くことができます。 – royhowie

答えて

0

あなたはこのような何か行うことができます:

キャプチャパターン:

[!]([^!]*?)[!]([^!]*?)[!]([^!]*?)(.*) 

Raplacementパターン:

$1$2$3$4 

Basicalyを、それが

  • [!]はキャプチャ言います
  • ([^!]*?)あなたはちょっとあなたが使用している技術に言及する必要が!

Here's an example

-1

あなたが2以上のもののために正確に3回、3〜5倍の間について{3,5}、および{2,}ため{3}を使用する必要がありますが回。

+0

あなたはその質問を誤解しました。 OPが起こりたいと思う例を見てください – Dummy

関連する問題