2012-11-13 4 views
15

正規表現で「この橋を越えてジャンプ」と「この橋を越えてジャンプ」と一致させたいとします。 「FOOL」オプション(0または1オカレンス)を作成するにはどうすればよいですか?文字列の1つ以下の一致に一致する正規表現ですか?

+11

人がこれをdownvoted、なぜ私は理解していません。確かにそれはマニュアルです...しかし、単純な事実は、APIマニュアルは一般的にSUCK、スタックexchです。簡単なモデレートのためのgo-toサイトとなっています。厄介なAPIドキュメントや15ページのブログがない質問です。私はこのリンクをたどりました。何かを簡単に見つけるために、ちょっとしたマニュアルを読んで30分を過ごすことなく、簡単な答えが必要なのを忘れてしまったからです。 ここの司会者は、StackExchangeが人が気に入っているPRODUCTになっていることを認識しなければなりません。このような質問は、S.E.製品の定義。それと一緒に生きる。 –

答えて

12

You might want to have a look at a regex tutorial。正規表現の

オプションパーツは疑問符で示されています。あなたが2倍FOOL少ない含ま任意のの文字列にマッチさせたい

Jump over this bridge(FOOL)? 

場合、物事はもう少し複雑になります。そして、あなたがnegative lookaheadのより高度な概念を使用して最高のオフになります:

^(?!(.*FOOL){2}) 

これはその頭の上にロジックをオンにして、文字列FOOLの2(またはそれ以上)のインスタンスが含まれていないことを主張します。

+0

-1の場合、すべてのスタックオーバーフローの質問に「Xチュートリアルを読んで」と答えることができるので、コメントにポスターを嫌う以外の価値はないので、含めないでください。回答への外部リンクもまた怒られています(回答はあなたが行ったように質問自体にあるはずです) – pjcard

+0

@pjcardが合意しました。私はその答えに言い返しました。 –

+1

ありがとうございます、私は+1のためにそれを変更しました。 – pjcard

1

はこれをやってみてください。

Jump over this bridge(FOOL)? 

あなたはあまりにも文字列のセットを置くことができます。

Jump over this bridge(FOOL| FOOB)? 
10

任意の(0回または1回発生する)グループのオカレンスを指定するには?のマークを使用するか、最小値/最大値を0と1として中括弧を使用することもできます。答えは

Jump over this bridge(FOOL)? 

または

Jump over this bridge(FOOL){0,1} 
関連する問題