Имя: Пароль:
1C
 
Помощь по регулярному выражению
0 Маленький Вопросик
 
18.09.14
09:12
Народ, прошу подсказать по составлению регулярного выражения:

требуется отобрать число с дробной частью

[0-9]*.[0-9]*

на числах меньше 1000 это срабатывает, но когда число 1 102.55 - не срабатывает из-за пробела.

как это проуниверсалить?
1 Балоун
 
18.09.14
09:14
сравнить число с его целой частью не получается, да?
2 Маленький Вопросик
 
18.09.14
09:17
(1) поясни
3 Балоун
 
18.09.14
09:17
(2) не хочу
4 Маленький Вопросик
 
18.09.14
09:41
(3) вон из профессии
5 Маленький Вопросик
 
18.09.14
09:42
\d{0,1}\s{0,1}[0-9]*.[0-9]*
6 Ник второй
 
18.09.14
09:42
100$
7 13_Mult
 
18.09.14
10:02
\d[0-9]*.*
8 kittystark
 
18.09.14
10:09
а если число больше миллиона ?
а если разделитель разрядов не точка а запятая ?
в твоем (5) выражении разделителем прокатит и буква

\D*((\d+\s*)*([\.,]\d+)?)\D*
правда оно вернет с пробелами
9 kittystark
 
18.09.14
10:11
(8) только брать надо $1 по реплэйсу,
если тестом, то без обрамляющих \D*
10 ObjectRelation Model
 
18.09.14
10:14
в числах нет пробелов, это строковое представление, оно бывает разным
11 13_Mult
 
18.09.14
10:19
Вот так вроде работает
\d*\s*\d*[.]\d*
12 13_Mult
 
18.09.14
10:20
13 shpioleg
 
18.09.14
10:27
Еще вариант [\d\s]+[.,][\d]+
14 shpioleg
 
18.09.14
10:29
+ (13) в конце правда квадратные скобки лишние
15 13_Mult
 
18.09.14
10:30
можно округлить до целого большую сторону и если оно = то целое, не пойдёть ? ))
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс