$str="121.5221";
должно получится 1+2+1.5+2+2+1=9.5
Спустя 12 минут, 6 секунд (21.09.2010 - 15:43) twin написал(а):
$str = '121.5221';
$str = preg_replace('#(\d\.\d)|(\d{1})#', ' $1$2 ', $str);
$sum = array_sum(explode(' ', $str));
echo $sum;
Спустя 2 минуты, 38 секунд (21.09.2010 - 15:46) Guest написал(а):
twin
спасибо!
спасибо!
Спустя 2 минуты, 35 секунд (21.09.2010 - 15:48) Guest написал(а):
еще вопрос можно, буква W чем-то отличается, например, об буквы w, но я не знаю как объяснить лучше, что-то связано с размером, если написать www и на след строке WWW можно заметить, что вторая строка визуально длиннее, можно ли как-нибудь узнать "размер" символа?
Спустя 6 минут (21.09.2010 - 15:54) twin написал(а):
В полиграфии это называется кернинг. Это сделано специально, чтобы текст воспринимался более равномерным. Если нужно одинаково, следует выбрать моноширинный шрифт или в стилях есть какой то вариант... не помню.
Спустя 5 минут, 37 секунд (21.09.2010 - 16:00) Guest написал(а):
twin
передо мной стоит задача порезать длинное слово, НО не по кол-во символов
напишут например аааааааааааааааааааааааааааааaaaaaaaaa и WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW(пусть кол-во символов одинаковое в обоих этих словах, но визуально второе слово будет почти в 2 раза длиннее.
я хочу сделать, так чтобы каждый символ имел свой размер, то есть узнать длину слова не по кол-во символов, а по их размеру. и рехать его соответственно также, тогда визуально слова будут резать в одном и том же месте
передо мной стоит задача порезать длинное слово, НО не по кол-во символов
напишут например аааааааааааааааааааааааааааааaaaaaaaaa и WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW(пусть кол-во символов одинаковое в обоих этих словах, но визуально второе слово будет почти в 2 раза длиннее.
я хочу сделать, так чтобы каждый символ имел свой размер, то есть узнать длину слова не по кол-во символов, а по их размеру. и рехать его соответственно также, тогда визуально слова будут резать в одном и том же месте
Спустя 1 минута, 32 секунды (21.09.2010 - 16:01) twin написал(а):
так не выйдет. размеры у них у всех разные. только шрифтами или стилями ровнять.
Спустя 7 минут, 11 секунд (21.09.2010 - 16:09) Guest написал(а):
twin
почему не выйдет? вот пришло предложение, заменяем каждый символ на его "размер", потом все слова засовываем в массив и по очереди суммируем все цифры в слове - а сумму сравниваем с максимальным значением. что-то в таком духе.
а чтобы с разными шрифтами не было проблем, позволяем самим устанавливать размер символа. к примеру мелкий $s(мелкий) = 0.5 ;$m(средний)=1 ну и так далее, чтобы можно было менять
почему не выйдет? вот пришло предложение, заменяем каждый символ на его "размер", потом все слова засовываем в массив и по очереди суммируем все цифры в слове - а сумму сравниваем с максимальным значением. что-то в таком духе.
а чтобы с разными шрифтами не было проблем, позволяем самим устанавливать размер символа. к примеру мелкий $s(мелкий) = 0.5 ;$m(средний)=1 ну и так далее, чтобы можно было менять
Спустя 3 минуты, 34 секунды (21.09.2010 - 16:12) DedMorozzz написал(а):
Решение лишь строковыми ф-ями:
$a="121.5221";
$res = 0;
$kol = strlen($a);
for ($i=0;$i<$kol;$i++){
if($a[$i]=='.'){
$res = $res.$a[$i].$a[$i+1];
$i = $i+1;
}
else {
$res = $res + $a[$i];
}
}
echo $res;
Спустя 5 минут, 38 секунд (21.09.2010 - 16:18) twin написал(а):
Цитата |
почему не выйдет? |
а как ты размер узнаешь? он же в шрифте, а шрифт на компе пользователя.
Спустя 5 минут, 35 секунд (21.09.2010 - 16:23) Guest написал(а):
twin
размеры символовов относительно стандартного - я специльно посмотрел, во всех основных шрифтах разница между разными буквами и символами идентична, вот допустим букву а возьмем за стандарт(медиум) заменяем ее на 1, и все остальные буквы сравниваем с буквой а. я это займет конечно некоторое время, но я уже заметил, что где-то 7 групп рамеров нужно составить.
размеры символовов относительно стандартного - я специльно посмотрел, во всех основных шрифтах разница между разными буквами и символами идентична, вот допустим букву а возьмем за стандарт(медиум) заменяем ее на 1, и все остальные буквы сравниваем с буквой а. я это займет конечно некоторое время, но я уже заметил, что где-то 7 групп рамеров нужно составить.
Спустя 3 минуты, 52 секунды (21.09.2010 - 16:27) twin написал(а):
Если получится - отпишись. Прикольно.

Спустя 1 минута, 34 секунды (21.09.2010 - 16:29) Guest написал(а):
хорошо, я уже начал!!!!
Спустя 3 часа, 58 минут, 8 секунд (21.09.2010 - 20:27) Guest написал(а):
сделал! завтра все подкорректирую насколько знаний хватит и выложу!
Спустя 2 минуты, 35 секунд (21.09.2010 - 20:30) twin написал(а):

Спустя 1 год, 11 месяцев, 20 дней, 3 часа, 33 минуты, 41 секунда (12.09.2012 - 00:03) Гость_Сергей написал(а):
А как получить сумму чисел из выражения
"допустим так сегодня пошел гулять в 5 часов и в 6 пришёл домой"
"допустим так сегодня пошел гулять в 5 часов и в 6 пришёл домой"