PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (17): « 1 [2] 3 4 5 6 7 8 9 ... » В конец

> Найдено сообщений: 255
UNTRUSTED Отправлено: 18 Апреля, 2012 - 10:22:36 • Тема: Еще раз регулярка • Форум: Вопросы новичков

Ответов: 10
Просмотров: 418
Warning: preg_replace() [function.preg-replace]: Compilation failed: number too big in {} quantifier at offset 9
google пишет:
Кол-во повторений в фигурных скобках {} в рег. выражениях имеет ограничение 65535

Вот это уже проблема!
Надо что то другое тогда думать, там более миллиона символов обрезать надо!
UNTRUSTED Отправлено: 18 Апреля, 2012 - 10:12:48 • Тема: Еще раз регулярка • Форум: Вопросы новичков

Ответов: 10
Просмотров: 418
EuGen пишет:
aaaaa

Ну это самый простой вариант, а если таких много, и символов не 5 а 50 например?? Тогда уже получаеться
PHP:
скопировать код в буфер обмена
  1. $sData=preg_replace('/a{10,}/', 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa', $sData);

Улыбка
а если еще больше 50-ти? Тогда вообще жесть!
UNTRUSTED Отправлено: 18 Апреля, 2012 - 10:06:24 • Тема: Еще раз регулярка • Форум: Вопросы новичков

Ответов: 10
Просмотров: 418
Как сделать?


Условие:
Если в строке находит от 10 и более символов 'a', то меняет их на 5 символов 'a'?
UNTRUSTED Отправлено: 17 Апреля, 2012 - 19:19:54 • Тема: Помогите с регуляркой! • Форум: Вопросы новичков

Ответов: 3
Просмотров: 158
Нет, тогда можно просто первое записать, так как когда | то получается во всех трех случаях первый верен и выдаст true!
Надо что-то вроде со знаком вопроса '?' кажеться!
UNTRUSTED Отправлено: 17 Апреля, 2012 - 18:42:49 • Тема: Помогите с регуляркой! • Форум: Вопросы новичков

Ответов: 3
Просмотров: 158
Плохо разбираюсь в исключениях.. Подскажите, как объединить эти три выражения в одно!
PHP:
скопировать код в буфер обмена
  1. preg_match('/[\S]*/',$var)
  2. preg_match('/^[\S]+[\/]{1}[\S]+$/',$var)
  3. preg_match('/^[\S]*[ ]{1}[\S]+[\/]{1}[\S]+$/',$var)
UNTRUSTED Отправлено: 17 Апреля, 2012 - 16:58:16 • Тема: Чето туплю вообще! Логические операторы! • Форум: Вопросы новичков

Ответов: 37
Просмотров: 1198
DelphinPRO пишет:
по-моему так нагляднее

Да, спасибо! Вот так думаю лучше всегоУлыбка
UNTRUSTED Отправлено: 17 Апреля, 2012 - 13:14:15 • Тема: Массивы • Форум: Вопросы новичков

Ответов: 11
Просмотров: 397
Смотрим пример!
PHP:
скопировать код в буфер обмена
  1.  
  2. $a=50000;          //это просто для примера
  3. $array=array();  //создаем массив
  4. $i=0;          
  5. while($a>10){     //пока a>10
  6.   $a/=10;            //a делим на 10
  7.   $i++;               //i прибавляем
  8. }
  9. $array[$i].=$a;  //заносим в массив с ключем i значение а
  10. var_dump($array);   //выдаст array(1) {[4]=>'5'};
  11.  

Внимание! Вопрос:
Как можно заполнить ключи, которые меньше данного ключа каким-то значением?
т.е. что-бы получилось вот так:
PHP:
скопировать код в буфер обмена
  1. var_dump($array); // array(5) {[0]=>0,[1]=>0,[2]=>0,[3]=>0,[4]=>5}

P.S. Значение, которое нужно вставить, всегда одинакого!
UNTRUSTED Отправлено: 16 Апреля, 2012 - 14:45:30 • Тема: Помощь с математикой:) • Форум: Вопросы новичков

Ответов: 3
Просмотров: 160
EuGen пишет:
как может быть так, что какой-либо разряд есть в 18-ричной системе, а число - в 20-ричной

Нет, число не в 20-ричной,
оно вот так:
от 1 до 19 записывается непозиционно вот так:
CODE (htmlphp):
скопировать код в буфер обмена
  1. 1
  2. 11
  3. 111
  4. 1111
  5. 5
  6. 51
  7. 511
  8. 5111
  9. 51111
  10. 55
  11. 551
  12. 5511
  13. 55111
  14. 551111
  15. 555
  16. 5551
  17. 55511
  18. 555111
  19. 5551111
  20. //а двацдать записываеться вот так - 1 0, потом опять:
  21. 1 1
  22. 1 11
  23. 1 111
  24. 1 1111
  25. 1 5
  26. 1 51
  27. ...
  28. ...
  29. 55511 5551111 //359 (5*20*3)+(1*20*2)+(5*1*3)+(1*1*4), максимальное во втором разряде потом идет
  30. 1 0 0 // (1*20*18)=360
  31. 1 0 1
  32. //и остальные разряды 20-ричные опять


DelphinPRO пишет:
у UNTRUSTED все задачки мутные

Легких путей не ищемУлыбка

(Добавление)
В первом разряде 20 знаков вместе с нулём, наибольшая цифра - 19. Вес первого разряда равен 1. Это разряд единиц.
Во втором разряде 18 разрядов вместе с нулём, наибольшая цифра 17. Вес второго разряда равен 20. Это разряд двадцаток.
В третьем разряде опять 20 знаков вместе с нулём, наибольшая цифра 19, но "вес" цифры равен 360 (18*20), а не 400, как было бы в правильной 20-иричной системе.
UNTRUSTED Отправлено: 16 Апреля, 2012 - 14:11:43 • Тема: Помощь с математикой:) • Форум: Вопросы новичков

Ответов: 3
Просмотров: 160
Незнаю как правильно объяснить, но попробую!
Допустим мы переводим из 20-ричного основания в 10-ричное, это, просто.. Но есть одно но: 3-й разряд не 20-ричный, а 18-ричный! Как реализовать? Все перепробовал, не получаетьсяНедовольство, огорчение
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. $number = //от '1'(1) до '1 0 5551111' показывает правильно, а вот '1 1 0' уже показывает не 380, а 378
  3. $arr = explode(' ',$number);//через пробелы делим на разряды
  4. $i = count($arr)-1;//количество разрядов -1
  5. for($d=1,$dec=0;$i>=0;$i--)
  6. {
  7.   for($sym=0,$k=$arr[$i],$n=strlen($number);$sym<$n;$sym++)
  8.   {
  9.     $char = $k[$sym];//выбираем каждое число из данного разряда
  10.     $dec += ($char*$d); //и прибавляем его, умножая на основание разряда
  11.   }
  12.   if($i==2) //третий разряд
  13.   {
  14.     $d*=18; //если то умножаем на 18
  15.   }else{
  16.     $d*=20;  //во всех остальных случаях на 20
  17.   }
  18. }
  19. ?>

Вот что то вроде этого Улыбка
(Добавление)
ну и соответственно разряды записываються через пробел, а остальные - непозиционные, и просто складываються между собой!
UNTRUSTED Отправлено: 13 Апреля, 2012 - 23:12:51 • Тема: Стоит ли изучать ПХП? • Форум: Вопросы новичков

Ответов: 53
Просмотров: 2557

IllusionMH пишет:
Это как вскапывать огород ложкой или нормальной лопатой.

Ну... лопата в любом случае мощнее ложкиУлыбка
UNTRUSTED Отправлено: 13 Апреля, 2012 - 23:09:33 • Тема: Чето туплю вообще! Логические операторы! • Форум: Вопросы новичков

Ответов: 37
Просмотров: 1198
LIME пишет:
интервал от 1 до 10 это a>1&&a<10
а у вас наоброт

Да это вы троллите! Мне другое надо!
Цитата:
PHP:
скопировать код в буфер обмена
  1. if( (($a < 1 || $a > 10) && $a != 50)

Вот это вам переведу на русский:
PHP:
скопировать код в буфер обмена
  1. ##Если( ((А меньше 1 или А больше 10) и А не равно 50){, то функция должна вернуть вот это('ОШИБКА');}

Хотите сказать А не может быть либо меньше одного, либо больше 10??? Кому тогда в школу надо!
Даже для подтверждения, я вам вот такую функцию напишу, проверьте сами!
PHP:
скопировать код в буфер обмена
  1. function itrue($a,$b){
  2. if( (($a < 1 || $a > 10) && $a != 50) || (($b < 1 || $b > 10) && $b != 50)){
  3.     return('ОШИБКА!!!');
  4. }
  5. return 'A равно: '.$a.'<br>B равно: '.$b;
  6. }
  7. echo itrue($_POST['a'],$_POST['b']);
  8. ?>
  9. <form method="post">
  10. <input name="a">
  11. <input name="b">
  12. <input type="submit">
  13. <form>
  14.  

Что скажете??? Попробуйте свое подставить!
UNTRUSTED Отправлено: 12 Апреля, 2012 - 23:28:46 • Тема: Чето туплю вообще! Логические операторы! • Форум: Вопросы новичков

Ответов: 37
Просмотров: 1198
Вот смотрите, пробовал в точности вот так, как у вас!
((a>1&&a<10)||a==50)&&((b>1&&b<10)||b==50)
CODE (htmlphp):
скопировать код в буфер обмена
  1. if( (($a < 1 || $a > 10) && $a != 50) && (($b < 1 || $b > 10) && $b != 50){
  2.    return('ОШИБКА!!!');
  3.   }



Но я разобрался...
Нужно в вашем коде
заменить посередине && на ||
что бы было вот так:
((a>1&&a<10)||a==50)||((b>1&&b<10)||b==50)
и тогда все работает
PHP:
скопировать код в буфер обмена
  1. if( (($a < 1 || $a > 10) && $a != 50) || (($b < 1 || $b > 10) && $b != 50){
  2.     return('ОШИБКА!!!');
  3.   }
UNTRUSTED Отправлено: 12 Апреля, 2012 - 23:05:38 • Тема: Стоит ли изучать ПХП? • Форум: Вопросы новичков

Ответов: 53
Просмотров: 2557
DelphinPRO пишет:
Что есть в вашем понимании "мощный язык"? Чем измеряется его мощность ?

Мощность языка заключается в его возможностях!
IllusionMH пишет:
UNTRUSTED, и как быстро можно на ассемблере написать простой вывод HTML странички в браузер пользователя?

Тут говорим совсем не о скорости...




IllusionMH пишет:
на ассемблере написать простой вывод HTML странички

P.S. Я придумал прикол, в подпись себе добавлю...
UNTRUSTED Отправлено: 12 Апреля, 2012 - 22:03:57 • Тема: Чето туплю вообще! Логические операторы! • Форум: Вопросы новичков

Ответов: 37
Просмотров: 1198
LIME пишет:
вам бы в кабинет ASDN и проводки повтыкать в логические элементы))

Радость
(Добавление)
LIME пишет:
UNTRUSTED вы неисправимы))
по вашему условию данный нами вариант оптимален и нет других))

Нет... ваш вариант, к сожалению, тоже не работает!
UNTRUSTED Отправлено: 12 Апреля, 2012 - 21:48:20 • Тема: Чето туплю вообще! Логические операторы! • Форум: Вопросы новичков

Ответов: 37
Просмотров: 1198
Мелкий пишет:
А это условие - никогда не выполнится. $a ни при каких условиях не может быть одновременно меньше 1 и больше 10.


Да, верно.. Пробую один аргумент вообще пустой, или не подходящий по условиям передать, все равно ошибк нету!!

Блин, а как тогда сделать?

Страниц (17): « 1 [2] 3 4 5 6 7 8 9 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB