<?xml version="1.0" encoding="koi8-r"?>
<rss version="0.91">
<channel>
    <title>OpenForum RSS: Получить все числа из строки</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/6890.html</link>
    <description>День добрый, про лазил в инете, по пробовал по всякому, но не получается у меня выдрать одним регулярным выражением, все числа из такой строки&lt;br&gt;POLYGON((8136707.36 6414194.03,8136757.2 6414216.8,8136786.14 6414153.45,8136800.67 6414160.1,8136808.35 6414143.29,8136793.87 6414136.67,8136803.01 6414116.66,8136753.18 6414093.88,8136743.62 6414114.81,8136730.03 6414108.6,8136722.53 6414124.99,8136736.07 6414131.18,8136707.36 6414194.03))&lt;br&gt;все числа, без скобок и полигона, вот что последние испробовал, но оно не очень, вообще не то&lt;br&gt;&lt;br&gt;my $digit = &apos;&#091;+-&#093;?&#092;d+&#092;.?&#092;d*&#092;s&#091;+-&#093;?&#092;d+&#092;.?&#092;d*&#092;,&apos;;&lt;br&gt;if ($i =~ /(&#092;w+&#092;(&#092;()($digit&#123;1,&#125;)/)&lt;br&gt;    &#123;&lt;br&gt;        print &quot;1 $1&#092;n&quot;;    # Результат &apos;1&apos;&lt;br&gt;        print &quot;2 $2&#092;n&quot;;    # &apos;2&apos;&lt;br&gt;        print &quot;3 $3&#092;n&quot;;  # &apos;3&apos;&lt;br&gt;        print &quot;все совпадение $+&#092;n&quot;;    # &apos;2&apos;&lt;br&gt;        print &quot;1,2 $&amp;&#092;n&quot;;    # &apos;1 два 2&apos;&lt;br&gt;        print &quot;все до совпадения $&#096;&#092;n&quot;;    # &apos;Один &apos;&lt;br&gt;        print &quot;все после совпадения $&apos;&#092;n&quot;;    # &apos; и три 3&apos;&lt;br&gt;        print &quot;обозначает последнее совпадение $+&#092;n&quot;;&lt;br&gt;   &#125;&lt;br&gt;Вот такое выдаёт:&lt;br&gt;1 PO</description>

<item>
    <title>Получить все числа из строки (EXA)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/6890.html#6</link>
    <pubDate>Fri, 25 Jun 2010 05:44:51 GMT</pubDate>
    <description>Да скорость не нужна совсем.&lt;br&gt;Спасибо за советы. К счастью, данные выдирать не пришлось, другой запрос бд пошёл. За примеры бавшое спасибо, другим как говориться в помощь.&lt;br&gt;</description>
</item>

<item>
    <title>Получить все числа из строки (XAnder)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/6890.html#5</link>
    <pubDate>Thu, 24 Jun 2010 07:13:53 GMT</pubDate>
    <description>&amp;gt;Поточный парсер быстрее регулярки будет.&lt;br&gt;&lt;br&gt;Согласен. Но если данных немного, то смысла ускорять нет. А если много и скорость важна, то лучше вообще писать это на Сях.&lt;br&gt;&lt;br&gt;&amp;gt;И понятнее.&lt;br&gt;&lt;br&gt;А вот тут можно поспорить.&lt;br&gt;&lt;br&gt;&amp;gt;Взять всё между внутренними скобками,&lt;br&gt;&lt;br&gt;Это или регексп вида /&#092;(&#092;((.*)&#092;)&#092;)/ или строенная конструкция из index и substr - вряд ли будет способствовать пониманию.&lt;br&gt;&lt;br&gt;&amp;gt;split по пробелу, &lt;br&gt;&amp;gt;на каждый элемент split по запятой &lt;br&gt;&lt;br&gt;Цикл поисков по простым регекспам, построение (пусть и неявное) промежуточных списков. Не думаю, что сильный выигрыш в скорости получится.&lt;br&gt;</description>
</item>

<item>
    <title>Получить все числа из строки (Недовольный)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/6890.html#4</link>
    <pubDate>Thu, 24 Jun 2010 06:29:52 GMT</pubDate>
    <description>Поточный парсер быстрее регулярки будет. И понятнее.&lt;br&gt;&lt;br&gt;Взять всё между внутренними скобками,&lt;br&gt;split по пробелу, &lt;br&gt;на каждый элемент split по запятой &lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</description>
</item>

<item>
    <title>Получить все числа из строки (XAnder)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/6890.html#3</link>
    <pubDate>Thu, 24 Jun 2010 05:02:23 GMT</pubDate>
    <description>Выдрать все числа из строки? Нет ничего проще:&lt;br&gt;&lt;br&gt;$s = ...; # тут наша строка&lt;br&gt;&#064;a = $s =~ m/&#091;-+&#093;?&#092;d+(?:&#092;.&#092;d+)?/g; # а тут уже список чисел&lt;br&gt;</description>
</item>

<item>
    <title>Получить все числа из строки (Pahanivo)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/6890.html#2</link>
    <pubDate>Thu, 24 Jun 2010 04:33:36 GMT</pubDate>
    <description>&amp;gt;а чего бы не заменить запятую на пробел и не использовать split &lt;br&gt;&amp;gt;? &lt;br&gt;&lt;br&gt;да, самое простое в лоб заюзать сплит&lt;br&gt;только предварительно заменить все нецифровые символы на пробельные, незабыть оставить точку &#092;d&#092;.&#092;d&lt;br&gt;</description>
</item>

<item>
    <title>Получить все числа из строки (danunah)</title>
    <link>https://opennet.dev/openforum/vsluhforumID8/6890.html#1</link>
    <pubDate>Wed, 23 Jun 2010 18:27:14 GMT</pubDate>
    <description>а чего бы не заменить запятую на пробел и не использовать split ?&lt;br&gt;</description>
</item>

</channel>
</rss>
