0

Ruby 言語の正規表現に関する本を読んだばかりです。私はそれをグーグルでやったが、それでも と について混乱{x}{x,y}た.

本は言う:

{x}→前の文字の x 回の出現に一致します。
{x,y}→少なくとも x 回、最大で y 回の出現に一致します。

誰かがこれをよりよく説明したり、いくつかの例を提供したりできますか?

4

4 に答える 4

2

確かに、これらの例を見てください:

http://rubular.com/r/sARHv0vf72

http://rubular.com/r/730Zo6rIls

/a{4}/

は、次の短いバージョンです。

/aaaa/

それは言う:「a」の正確な4(連続)文字に一致。

どこ

/a{2,4}/

発言: 'a' の少なくとも 2 文字、最大 4 文字に一致します。

それは一致します

/aa/
/aaa/
/aaaa/

そして似合わない

/a/
/aaaaa/
/xxx/
于 2013-07-24T09:11:29.547 に答える
1

区間式

GNU awk は、マニュアルのRegexp Operatorsセクションでこれらを「間隔式」と呼んでいます。式について次のように説明しています。

{n}
{n,}
{n,m}
中括弧内の 1 つまたは 2 つの数値は、区間式を表します。中括弧内に数字が 1 つある場合、前の正規表現が n 回繰り返されます。コンマで区切られた 2 つの数値がある場合、前の正規表現が n から m 回繰り返されます。1 つの数値の後にコンマが続く場合、前の正規表現が少なくとも n 回繰り返されます。

このマニュアルには、次の参照例も含まれています。

wh{3}y
    Matches ‘whhhy’, but not ‘why’ or ‘whhhhy’.
wh{3,5}y
    Matches ‘whhhy’, ‘whhhhy’, or ‘whhhhhy’, only.
wh{2,}y
    Matches ‘whhy’ or ‘whhhy’, and so on.

関連項目

  • Ruby の正規表現クラス。
  • Ruby の車エンジンの量指定子セクション。
于 2013-07-24T12:00:48.613 に答える
1

Limiting Repetitionこのための優れたオンラインチュートリアル。

于 2013-07-24T09:11:21.397 に答える