1

私はかつて次の正規表現の例を次のように読みました

average\(([^\)]*)\)

これは何を表していますか?つまり、この正規表現の構造をどのように理解するのでしょうか。

4

3 に答える 3

0

あなたの正規表現は一致しています:

average(what%ever&is&not_containingAAAAAAAAAclosingParenthese)

また、エスケープされていない括弧は、多くの場合、抽出したい正規表現の一部であるグループを表します。

次のテキストがある場合

This boy entered a pub and average(Hello I'm the group) ordered a beer. 

あなたの正規表現は

average(Hello I'm the group)

部。一致したら、抽出できます

Hello I'm the group

正規表現はグループを定義しているため、次のようになります。

([^\)]*)

説明:

()[] * ^は正規表現に関する特殊文字ですが、バックスラッシュ\でエスケープして、文字自体として使用できます。

[^)]:閉じ括弧ではない任意の文字の文字クラスに一致します。[^)] *:このクラスの未定義の文字数(0..n)に一致します。

それが役立つことを願っています、それが十分に明確であるかどうかわからない。

于 2013-02-18T20:55:24.560 に答える
0

[^)]は、)以外の任意の文字を意味します

文字*は最終的に繰り返されることを意味します

()自分自身を一致させる

\(... \)後でアクセスする式の一部を識別します

于 2013-02-18T20:53:59.930 に答える
0

正規表現を理解して学習するための優れたリソースであるサイトがいくつかあります。正規表現を貼り付けるだけで、説明が出てきます。

私のお気に入りはregexper.comです:

ここに画像の説明を入力してください

regex101.comもあります。これは、何が起こっているのかを文字ごとに説明し、下部に便利なリファレンスを提供します。

ここに画像の説明を入力してください

于 2013-02-18T21:57:29.820 に答える