次のコードを使用して、文字列からバージョン番号を抽出しています。バージョン番号は、数字とドットのみで行われる最初の一致です。たとえば、文字列: "GT-I9000M-user 2.25.31 FROYO UGKC1 release-keys"の場合、一致は次のようになります。 "2.25.31"文字列の別の例: "1.24.661.1hbootpreupdate:13DelCache:1"一致は次のようになります。 :「1.24.661.1」。
私の現在のコードは次のとおりです。
if (preg_match('/[\d]+[\.][\d]+/', $version, $matches)) {
return $matches[0]; //returning the first match
}
このコードは、すべてではなく一部のケースにのみ適合します。たとえば、最初の例では、「2.25.31」ではなく「2.25」のみが返されます。2番目の例では、「1.24.661.1」ではなく「1.24」が返されます。
私はRegExを初めて使用するので、それを理解するのに苦労しています。
ご協力いただきありがとうございます。