ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #301  
Старый 07.03.2009, 22:21
PaCo
Постоянный
Регистрация: 06.02.2008
Сообщений: 494
Провел на форуме:
1754802

Репутация: 380
По умолчанию

Цитата:
Сообщение от Велемир  
Эм...так задумано ?

Код:
$x = 'fuckinstrin';

if(preg_match('#[s]....#',$x,$matches)) {

print_r($matches);

}
Сначала проверяется каждый символ по куску шаблона [s].Совпал один символ.Затем идут точки,которые соответствуют любому символу.Так почему проверка начинается не с начала,а с того места,где произошло первое совпадение ? Шаблон сработал правильно,но почему-то не так,как я ожидал))(Ожидалось sfuck)
Ну во первых [] - во сновном самое логичное применять для символьго класса, у тебя 1 символ,
во вторых если ..... - жесть, {4} то есть так

#s.{4}#

, ну и в третих у тебя никак не будет sfuck потому как у тебя я не наблюдаю ПЕРЕД fuckinstrin s , у тебя будет strin, регулярное выражения будет обрабатываться с начало, слева на право без возратов назад.
 
Ответить с цитированием

  #302  
Старый 07.03.2009, 22:31
Велемир
Banned
Регистрация: 19.06.2006
Сообщений: 1,239
Провел на форуме:
1469161

Репутация: 142


Отправить сообщение для Велемир с помощью ICQ
По умолчанию

Цитата:
Сообщение от PaCo  
, регулярное выражения будет обрабатываться с начало, слева на право без возратов назад.
Это всё,что я хотел узнать )).Что касается ....,то это было для примера.Конечно же,целесообразнее использовать .{4},но ведь ....=.{4},не так ли ? Также,как и [символ] = символ.По крайней мере,я отличий не наблюдал.

ЗЫ: Диву даюсь,что так быстро получил ответ на вопрос .Лови плюсики)))
 
Ответить с цитированием

  #303  
Старый 08.03.2009, 00:17
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме:
6462214

Репутация: 3171


По умолчанию

А теперь я
Хотя я заранее знаю ответ на свой вопрос.
имеем например;
PHP код:
$new preg_replace('#old(.*)#','new(тут то что было в (.*)',$str)'; 
нереал?
 
Ответить с цитированием

  #304  
Старый 08.03.2009, 00:26
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме:
2769640

Репутация: 1304


По умолчанию

m0Hze
PHP код:
$new=preg_replace('~old(.*)~','new$1',$str); 
 
Ответить с цитированием

  #305  
Старый 08.03.2009, 21:21
Fak1r
Познающий
Регистрация: 03.06.2007
Сообщений: 31
Провел на форуме:
163026

Репутация: 3
Отправить сообщение для Fak1r с помощью ICQ
По умолчанию

Есть такой html код

Код:
<th width="80">
</th>
<th width="125" style='white-space: nowrap;'>
<a style="cursor:pointer" onclick="javascript:doit(6, 1, 61, 9, 1, 1);"><img src="http://uni9.ogame.ru/evolution/img/e.gif" border="0" alt="Шпионаж" title="Шпионаж" /></a>
<a href="index.php?page=writemessages&session=e104001d5a6b&messageziel=142200"><img src="" border="0" alt="Написать сообщение" title="Написать сообщение" /></a>
<a href="index.php?page=buddy&session=e104001d5a6b&action=7&buddy_id=142200"><img src="http://uni9.ogame.ru/evolution/img/b.gif" border="0" alt="Предложение подружиться" title="Предложение подружиться" /></a>
</th>
</tr>
    <tr>
    <th width="30">
      <a href="#"  tabindex="9" >10</a>
    </th>
    <th width="30">
      <a style="cursor:pointer" onmouseover='return overlib("<table width=240><tr><td class=c colspan=2 >Планета amber [1:61:10]</td></tr><tr><th width=80 ><img src=http://uni9.ogame.ru/evolution/planeten/small/s_wasserplanet01.jpg height=75 width=75 /></th><th align=left ><a href=# onclick=doit(6,1,61,10,1,1) >Шпионаж</a><br><br /><a href=index.php?page=flotten1&session=e104001d5a6b&galaxy=1&system=61&planet=10&planettype=1&target_mission=1 m>Атака</a><br /><a href=index.php?page=flotten1&session=e104001d5a6b&galaxy=1&system=61&planet=10&planettype=1&target_mission=5 >Удерживать</a><br /><a href=index.php?page=flotten1&session=e104001d5a6b&galaxy=1&system=61&planet=10&planettype=1&target_mission=3 >Транспорт</a><br /></th></tr></table>", STICKY, MOUSEOFF, DELAY, 750, CENTER, OFFSETX, -40, OFFSETY, -40 );' onmouseout="return nd();">
      <img src="http://uni9.ogame.ru/evolution/planeten/small/s_wasserplanet01.jpg" height="30" width="30"/></a>
</th>
<th width="130" style='white-space: nowrap;'>
amber</th>
<th width="30" style='white-space: nowrap;'>
   </th>
    <th width="30">

 
   </th>
    <th width="150">

         <a style="cursor:pointer" 	onmouseover="return overlib('<table width=240 ><tr><td class=c >Игрок amberios. Место в рейтинге - 1264</td></tr><th><table><tr><td><a href=index.php?page=writemessages&session=e104001d5a6b&messageziel=143212 >Написать сообщение</a></td></tr><tr><td><a href=index.php?page=buddy&session=e104001d5a6b&action=7&buddy_id=143212 >Предложение подружиться</a></td></tr><tr><td><a href=index.php?page=statistics&session=e104001d5a6b&start=1201 >Статистика</a></td></tr></table></th></table>', STICKY, MOUSEOFF, DELAY, 750, CENTER, OFFSETY, -40 );" onmouseout="return nd();">
		<span class="inactive">Lightsinger</span></a>

(<span class='inactive'>i</span>)
</th>
Нужна регулярка которая вытаскивала бы выделенный текст.

Пробывал составить сам получилось следующее:
/="\d+" >(\d+)<\/a>.*\"inactive\">([[:graph:]]+)<\/span><\/a>/is
регулярка работает, но если кусков вышеприведенного html кода несколько, то вытаскивается только последнее совпадение с регуляркой.
 
Ответить с цитированием

  #306  
Старый 08.03.2009, 23:37
m0Hze
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме:
6462214

Репутация: 3171


По умолчанию

preg_match('<span class="inactive">(.*)</span>',$text,$match1');
preg_match('tabindex="9" >(.*)</a>',$text,$match1');
 
Ответить с цитированием

  #307  
Старый 08.03.2009, 23:59
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме:
9220514

Репутация: 3338


Отправить сообщение для Pashkela с помощью ICQ
По умолчанию

PHP код:
<pre>
<?php 
@set_time_limit(0); 
@
ini_set("display_errors","1");

$in = <<<HTML

<th width="80">
</th>
<th width="125" style='white-space: nowrap;'>
<a style="cursor:pointer" onclick="javascript:doit(6, 1, 61, 9, 1, 1);"><img src="http://uni9.ogame.ru/evolution/img/e.gif" border="0" alt="Шпионаж" title="Шпионаж" /></a>
<a href="index.php?page=writemessages&session=e104001d5a6b&messageziel=142200"><img src="" border="0" alt="Написать сообщение" title="Написать сообщение" /></a>
<a href="index.php?page=buddy&session=e104001d5a6b&action=7&buddy_id=142200"><img src="http://uni9.ogame.ru/evolution/img/b.gif" border="0" alt="Предложение подружиться" title="Предложение подружиться" /></a>
</th>
</tr>
    <tr>
    <th width="30">
      <a href="#"  tabindex="9" >10</a>
    </th>
    <th width="30">
      <a style="cursor:pointer" onmouseover='return overlib("<table width=240><tr><td class=c colspan=2 >Планета amber [1:61:10]</td></tr><tr><th width=80 ><img src=http://uni9.ogame.ru/evolution/planeten/small/s_wasserplanet01.jpg height=75 width=75 /></th><th align=left ><a href=# onclick=doit(6,1,61,10,1,1) >Шпионаж</a><br><br /><a href=index.php?page=flotten1&session=e104001d5a6b&galaxy=1&system=61&planet=10&planettype=1&target_mission=1 m>Атака</a><br /><a href=index.php?page=flotten1&session=e104001d5a6b&galaxy=1&system=61&planet=10&planettype=1&target_mission=5 >Удерживать</a><br /><a href=index.php?page=flotten1&session=e104001d5a6b&galaxy=1&system=61&planet=10&planettype=1&target_mission=3 >Транспорт</a><br /></th></tr></table>", STICKY, MOUSEOFF, DELAY, 750, CENTER, OFFSETX, -40, OFFSETY, -40 );' onmouseout="return nd();">
      <img src="http://uni9.ogame.ru/evolution/planeten/small/s_wasserplanet01.jpg" height="30" width="30"/></a>
</th>
<th width="130" style='white-space: nowrap;'>
amber</th>
<th width="30" style='white-space: nowrap;'>
   </th>
    <th width="30">

 
   </th>
    <th width="150">

         <a style="cursor:pointer"     onmouseover="return overlib('<table width=240 ><tr><td class=c >Игрок amberios. Место в рейтинге - 1264</td></tr><th><table><tr><td><a href=index.php?page=writemessages&session=e104001d5a6b&messageziel=143212 >Написать сообщение</a></td></tr><tr><td><a href=index.php?page=buddy&session=e104001d5a6b&action=7&buddy_id=143212 >Предложение подружиться</a></td></tr><tr><td><a href=index.php?page=statistics&session=e104001d5a6b&start=1201 >Статистика</a></td></tr></table></th></table>', STICKY, MOUSEOFF, DELAY, 750, CENTER, OFFSETY, -40 );" onmouseout="return nd();">
        <span class="inactive">Lightsinger</span></a>

(<span class='inactive'>i</span>)
</th>
-------------------------------------------------------------------------------------------------------
ДУБЛЬ:
-------------------------------------------------------------------------------------------------------
<th width="80">
</th>
<th width="125" style='white-space: nowrap;'>
<a style="cursor:pointer" onclick="javascript:doit(6, 1, 61, 9, 1, 1);"><img src="http://uni9.ogame.ru/evolution/img/e.gif" border="0" alt="Шпионаж" title="Шпионаж" /></a>
<a href="index.php?page=writemessages&session=e104001d5a6b&messageziel=142200"><img src="" border="0" alt="Написать сообщение" title="Написать сообщение" /></a>
<a href="index.php?page=buddy&session=e104001d5a6b&action=7&buddy_id=142200"><img src="http://uni9.ogame.ru/evolution/img/b.gif" border="0" alt="Предложение подружиться" title="Предложение подружиться" /></a>
</th>
</tr>
    <tr>
    <th width="30">
      <a href="#"  tabindex="9" >10</a>
    </th>
    <th width="30">
      <a style="cursor:pointer" onmouseover='return overlib("<table width=240><tr><td class=c colspan=2 >Планета amber [1:61:10]</td></tr><tr><th width=80 ><img src=http://uni9.ogame.ru/evolution/planeten/small/s_wasserplanet01.jpg height=75 width=75 /></th><th align=left ><a href=# onclick=doit(6,1,61,10,1,1) >Шпионаж</a><br><br /><a href=index.php?page=flotten1&session=e104001d5a6b&galaxy=1&system=61&planet=10&planettype=1&target_mission=1 m>Атака</a><br /><a href=index.php?page=flotten1&session=e104001d5a6b&galaxy=1&system=61&planet=10&planettype=1&target_mission=5 >Удерживать</a><br /><a href=index.php?page=flotten1&session=e104001d5a6b&galaxy=1&system=61&planet=10&planettype=1&target_mission=3 >Транспорт</a><br /></th></tr></table>", STICKY, MOUSEOFF, DELAY, 750, CENTER, OFFSETX, -40, OFFSETY, -40 );' onmouseout="return nd();">
      <img src="http://uni9.ogame.ru/evolution/planeten/small/s_wasserplanet01.jpg" height="30" width="30"/></a>
</th>
<th width="130" style='white-space: nowrap;'>
amber</th>
<th width="30" style='white-space: nowrap;'>
   </th>
    <th width="30">

 
   </th>
    <th width="150">

         <a style="cursor:pointer"     onmouseover="return overlib('<table width=240 ><tr><td class=c >Игрок amberios. Место в рейтинге - 1264</td></tr><th><table><tr><td><a href=index.php?page=writemessages&session=e104001d5a6b&messageziel=143212 >Написать сообщение</a></td></tr><tr><td><a href=index.php?page=buddy&session=e104001d5a6b&action=7&buddy_id=143212 >Предложение подружиться</a></td></tr><tr><td><a href=index.php?page=statistics&session=e104001d5a6b&start=1201 >Статистика</a></td></tr></table></th></table>', STICKY, MOUSEOFF, DELAY, 750, CENTER, OFFSETY, -40 );" onmouseout="return nd();">
        <span class="inactive">Lightsinger</span></a>

(<span class='inactive'>i</span>)
</th>

HTML;

preg_match_all('|<a href=.*tabindex=.*>(.*)</a>|'$in,$res1);
preg_match_all('|<span class=.*>(.*)</span></a>|'$in,$res2);

for(
$i=0;$i<count($res1[1]);$i++) echo "{$res1[1][$i]}\n";
for(
$z=0;$z<count($res2[1]);$z++) echo "{$res2[1][$z]}\n";

?>
</pre>
 
Ответить с цитированием

  #308  
Старый 09.03.2009, 00:20
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию

Я как всегда сторонник обойтись одной регуляркой))

PHP код:
preg_match_all('#(tabindex="9"[\s]?|class="inactive")>([0-9]*|[^<]*)[</span>]*</a>#s'$str$out);
print_r($out); 
Результат:
Код:
[2] => Array
        (
            [0] => 10
            [1] => Lightsinger
        )
 
Ответить с цитированием

  #309  
Старый 11.03.2009, 07:15
#Wolf#
Постоянный
Регистрация: 26.03.2008
Сообщений: 311
Провел на форуме:
3799424

Репутация: 479
По умолчанию

подскажите как отсеять все символы кроме :
A-Z
a-z
0-9
. , - * ( )
и точно так же с русским алфавитом.
и второй вопрос по мод_реврайту
что имеем:
http://site.ru/index.php?page=x и на этой же странице параметр id
что хотим: http://site.ru/page/x и так же с id
ээмм а в скриптах не надо будет менять ссылки?($pervpage = '<a title="В начало" href= ./index.php?page=1>'

Последний раз редактировалось #Wolf#; 11.03.2009 в 07:45..
 
Ответить с цитированием

  #310  
Старый 11.03.2009, 07:46
.:EnoT:.
Постоянный
Регистрация: 29.05.2007
Сообщений: 852
Провел на форуме:
4832771

Репутация: 1916


По умолчанию

Цитата:
Сообщение от #Wolf#  
подскажите как отсеять все символы кроме :
A-Z
a-z
0-9
. , - * ( )
и второй вопрос по мод_реврайту
что имеем:
http://site.ru/index.php?page=x и на этой же странице параметр id
что хотим: http://site.ru/page/x и так же с id
ээмм а в скриптах не надо будет менять ссылки?($pervpage = '<a title="В начало" href= ./index.php?page=1>'
1)
Так:
PHP код:
$str 'vbgmhdg*ere(bmdtjkddv0964,32257));№\84Рsdgdgbs !@@3ё+_):;№';

preg_match_all('#([a-z0-9-\.,\*\(\)]?)#i'$str$out);
echo 
join(''$out[1]); 
Или так:
PHP код:
$str 'vbgmhdg*ere(bmdtjkddv0964,32257));№\84Рsdgdgbs !@@3ё+_):;№';

echo 
preg_replace('#([^a-z0-9-\.,\*\(\)]?)#i'''$str); 


2)

Код:
RewriteRule ^page/([0-9]*)$ index.php?page=$1 [L]
И ссылки придётся менять в скриптах
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Delphi]/[Pascal] Задай вопрос, получи ответ Isis С/С++, C#, Delphi, .NET, Asm 6762 17.06.2010 21:23
[ *NIX ] Задай вопрос - получи ответ. Xszz *nix 1547 15.06.2010 15:41
[Lan] Задай вопрос - получи ответ! sedoy_xxx АнтиАдмин 133 31.03.2010 08:35
Всё о беспороводном соединении на кпк и смартфонах! Задай вопрос - получи ответ! ARMENIN Беспроводные технологии/WPAN/WLAN 2 02.11.2008 00:40
ЕсТь ВоПрос Guma Чаты 4 26.10.2005 21:48



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ