私は既に.*
が0以上の任意の文字を意味することを理解していますが、 誰かが次の作業でどのようにどのように説明されますか?どうやって*(ドットスター)?
.*([a-m/]*).*
.*([a-m/]+).*
.*?([a-m/]*).*
私は既に.*
が0以上の任意の文字を意味することを理解していますが、 誰かが次の作業でどのようにどのように説明されますか?どうやって*(ドットスター)?
.*([a-m/]*).*
.*([a-m/]+).*
.*?([a-m/]*).*
各ケースが異なります。
.*([a-m/]*).*
[a-m/]
が存在することが必要とされていないため、最初の.*
はおそらく、文字列全体にマッチし、最初の*
は貪欲で、最初に来ます。 .*([a-m/]+).*
最初.*
は一つだけが必要とされているので
[a-m/]
と一致する最後の文字までの文字列全体にマッチし、最初の*
は貪欲で、最初に来ます。 *?
がない貪欲であるため、 .*?([a-m/]*).*
最初.*?
は、[a-m/]
と一致する最初の文字までの文字列に一致します+
は、最後の貪欲で、かつので、その後[a-m/]+
は、それができるすべてにマッチします.*
は残りの文字列と一致します。
うまくやった! +1 – XIVSolutions
ドットは、ここに行くことができるものを意味し、星がそう.*
が空の文字列を含む任意の文字列を、受け入れ 少なくとも0回を意味します。
どうやってやったのですか?あなたは「本当の質問ではない」と答えました。 –
@Thereisnothingwecando: "本当の質問ではない... 10月2日12時9時38分" Ionutはイヤーラーに答えました(それはまだ本当の質問でした:))。 –
。*は「任意の文字、任意の回数の繰り返し」を意味します。
あなたの例の。*の機能は、含まれている式が何か(または何も)で囲まれないようにすることです。ドットは任意の文字を表し、アスタリスクは、前の文字が任意の回数繰り返される(またはまったく繰り返されない)ことを示します。
正規表現では、 '.'は数値、アルファベット文字、またはその他の特殊文字である任意の文字を表します。 '*'は0回以上を意味します。 – asgs
それは十分に簡単です。シンボルは何回も存在しますが、その下にはニュアンスがあります。さらに、正規表現では非常に中心的な概念です。今すぐ出て、正規表現についてのバックグラウンドを読んでください。あなたはさらに、より速く、そうするでしょう。 –