Я использую следующий код для извлечения номера версии из строки. Номер версии - это первое совпадение, состоящее только из цифр и точек. Например, в строке: «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» вместо «2.25.31». Во втором примере он вернет «1.24» вместо «1.24.661.1».
Я новичок в RegEx, поэтому мне сложно разобраться.
Спасибо за вашу помощь.