The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"регулярные выражения"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"регулярные выражения"
Сообщение от Purple emailИскать по авторуВ закладки(??) on 14-Апр-04, 12:16  (MSK)
как число из вида 1.5 привести к виду 1:50 ?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "регулярные выражения"
Сообщение от Purple emailИскать по авторуВ закладки(??) on 14-Апр-04, 13:00  (MSK)
>как число из вида 1.5 привести к виду 1:50 ?
пока сделал так:
$var=1.5;
$var=$var."0";
$var=~s/\./:/;
print "$var";
коряво ,наверно.
попроще можно как то сделать?
  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "регулярные выражения"
Сообщение от alchie Искать по авторуВ закладки(ok) on 16-Апр-04, 04:09  (MSK)
>>как число из вида 1.5 привести к виду 1:50 ?
>пока сделал так:
>$var=1.5;
>$var=$var."0";
>$var=~s/\./:/;
>print "$var";
>коряво ,наверно.
>попроще можно как то сделать?


s/(\d)\.(\d)/$1:${2}0/

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "регулярные выражения"
Сообщение от Purple emailИскать по авторуВ закладки(??) on 16-Апр-04, 07:33  (MSK)
>
>s/(\d)\.(\d)/$1:${2}0/
Alchie,как всегда помог.
Спасибо.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "регулярные выражения"
Сообщение от Purple emailИскать по авторуВ закладки(??) on 16-Апр-04, 08:47  (MSK)
>>
>>s/(\d)\.(\d)/$1:${2}0/
>Alchie,как всегда помог.
>Спасибо.

Я ,наверное, непроходимый тупица , но не могу сделать следующее преобразование:
Если число вида 1.5 то преобразовать к виду 1:50, если число целое , то преобразовать к виду 1:00.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "регулярные выражения"
Сообщение от alchie Искать по авторуВ закладки(ok) on 16-Апр-04, 09:44  (MSK)
>>>
>>>s/(\d)\.(\d)/$1:${2}0/
>>Alchie,как всегда помог.
>>Спасибо.
>
> Я ,наверное, непроходимый тупица , но не могу сделать следующее преобразование:
>
>Если число вида 1.5 то преобразовать к виду 1:50, если число целое
>, то преобразовать к виду 1:00.


perl -e '$a=1.5; ($a=sprintf("%.2f",$a))=~s/\./:/; print $a'
1:50
perl -e '$a=1; ($a=sprintf("%.2f",$a))=~s/\./:/; print $a'
1:00


не надо только забывать, что sprintf("%.2f" _округляет_ число до двух знаков после запятой

1.325 ==> 1.33
1.323 ==> 1.32

  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "регулярные выражения"
Сообщение от Purple emailИскать по авторуВ закладки(??) on 16-Апр-04, 11:19  (MSK)
>
>perl -e '$a=1.5; ($a=sprintf("%.2f",$a))=~s/\./:/; print $a'
>1:50
>perl -e '$a=1; ($a=sprintf("%.2f",$a))=~s/\./:/; print $a'
>1:00
>
>
>не надо только забывать, что sprintf("%.2f" _округляет_ число до двух знаков после
>запятой
>
>1.325 ==> 1.33
>1.323 ==> 1.32
Здесь немного посложнее получилось.
Alchie, спасибо за помошь!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "регулярные выражения"
Сообщение от alchie Искать по авторуВ закладки(ok) on 16-Апр-04, 11:50  (MSK)
>>
>>perl -e '$a=1.5; ($a=sprintf("%.2f",$a))=~s/\./:/; print $a'
>>1:50
>>perl -e '$a=1; ($a=sprintf("%.2f",$a))=~s/\./:/; print $a'
>>1:00
>Здесь немного посложнее получилось.
>Alchie, спасибо за помошь!

можно сделать более читабельно?
$a=1.5;
$a=sprintf("%.2f",$a);
$a=~s/\./:/;
print $a;

абсолютно тоже самое

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру