<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3913830</guid>
        <pubDate>Wed, 27 Nov 2024 04:41:29 +0000</pubDate>
        <title>Регулярное выражение для чисел в диапазоне от 100 до 999?</title>
        <link>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3913830</link>
        <description><![CDATA[Majestio: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=449992&view=findpost&p=3909896'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>amk &#064; <time class="tag-quote__quoted-time" datetime="2024-09-10T17:20:14+03:00">10.09.24, 14:20</time></span><div class='quote '>Majestio, что-то ты для чисел 100…672 слишком намудрил<br>
Правильная регулярка для этого диапазона выглядит гораздо проще</div></div><br>
Согласен. У тебя это получилось более красивше&#33;<br>
<br>
И тем не менее ... твоя регулярка, равно как и моя длинная не ловит число в скаляре &#39;0101&#39;.<br>
А вот мой второй вариант это обрабатывает по бесту:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">say &quot;Число попало в диапазон 100..672&quot; if (($i =~ /^\d+$/) &amp;&amp; ($i &#62; 99) &amp;&amp; ($i &#60; 673));</div></ol></div></div></div></div><script>preloadCodeButtons('1');</script>]]></description>
        <author>Majestio</author>
        <category>RegExp</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909948</guid>
        <pubDate>Wed, 11 Sep 2024 09:12:35 +0000</pubDate>
        <title>Регулярное выражение для чисел в диапазоне от 100 до 999?</title>
        <link>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909948</link>
        <description><![CDATA[iPhonesoft: Спасибо большое за регулярное выражение, и подробное объяснение&#33;<br>Для меня это было очень важно, и сильно помогло в деле&#33;]]></description>
        <author>iPhonesoft</author>
        <category>RegExp</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909896</guid>
        <pubDate>Tue, 10 Sep 2024 14:20:14 +0000</pubDate>
        <title>Регулярное выражение для чисел в диапазоне от 100 до 999?</title>
        <link>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909896</link>
        <description><![CDATA[amk: <strong class='tag-b'>Majestio</strong>, что-то ты для чисел 100…672 слишком намудрил<br>
Правильная регулярка для этого диапазона выглядит гораздо проще <div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#39;^(?:[1-5]\d\d|6[0-6]\d|67[0-2])$&#39;</div></ol></div></div></div></div><br>
<strong class='tag-b'>iPhonesoft</strong>, даже на интерпретируемых языках типа PHP выделение числа регуляркой с последующей проверкой диапазона может оказаться быстрее.<br>
<br>
В языках, где есть возможность проверить строку на &quot;числообразность&quot; (только цифры, возможно обрамлённые по бокам пробелами), обычно быстрее оказывается не искать нужные строки регуляркой, а проверить строку на &quot;число&quot; средствами языка, преобразовать её в число и проверить диапазон.<br>
<br>
Без регулярок или какого-либо их аналога не обойтись, если числа помечены каким-то текстом, по которому их и приходится выискивать, и значит их надо из этого текста выделять.<br>
Или нужны не числа, а даты, например, с их богатством представлений.]]></description>
        <author>amk</author>
        <category>RegExp</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909555</guid>
        <pubDate>Wed, 04 Sep 2024 05:00:43 +0000</pubDate>
        <title>Регулярное выражение для чисел в диапазоне от 100 до 999?</title>
        <link>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909555</link>
        <description><![CDATA[iPhonesoft: Спасибо тебе огромное за объяснение, и пример кода. Да, всё верно, лучше будет на простом PHP тогда написать: if(&#036;string &gt; 99 &amp;&amp; &#036;string &lt; 673)...]]></description>
        <author>iPhonesoft</author>
        <category>RegExp</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909552</guid>
        <pubDate>Tue, 03 Sep 2024 19:47:56 +0000</pubDate>
        <title>Регулярное выражение для чисел в диапазоне от 100 до 999?</title>
        <link>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909552</link>
        <description><![CDATA[Majestio: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=449992&view=findpost&p=3909549'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>iPhonesoft &#064; <time class="tag-quote__quoted-time" datetime="2024-09-03T17:51:09+00:00">03.09.24, 17:51</time></span><div class='quote '> А как взять диапазон от 100 до 672?</div></div><br>
Нахрен тебе такой геморрой&#33;&#33;&#33; &gt;:(  <br>
<br>
Регулярки эффективно работают и понимаются на примитивных шаблонах. Остальное тупо усложнение - не по фэншую и не по Бритве Оккама. <br>
<br>
Вот смотри на твоем примере ... Сорян, я на Perl&#39;е напишу, а ты зацени разницу:<br>
<br>
Твой желаемый результат чисто на регулярке:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">say &quot;Число попало в диапазон 100..672&quot; if ($i =~ /^(?:[1-5][0-9]{2}|6[0-5][0-9]|60[0-7]|61[0-2]|62[0-2]|66[0-9]|670|671|672)$/);</div></ol></div></div></div></div><br>
&quot;Человеческий&quot; вариант, и не менее тормозной, а может и более быстрый, но более понятный:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">say &quot;Число попало в диапазон 100..672&quot; if (($i =~ /^\d+$/) &amp;&amp; ($i &#62; 99) &amp;&amp; ($i &#60; 673));</div></ol></div></div></div></div><br>
А теперь спроси, нужен ли тебе именно полный анализ в регулярке?]]></description>
        <author>Majestio</author>
        <category>RegExp</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909549</guid>
        <pubDate>Tue, 03 Sep 2024 17:51:09 +0000</pubDate>
        <title>Регулярное выражение для чисел в диапазоне от 100 до 999?</title>
        <link>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909549</link>
        <description><![CDATA[iPhonesoft: Спасибо большое всем ответившим.<br>Да, в строке только цифры. А как взять диапазон от 100 до 672?<br>100, 101, 102... 672]]></description>
        <author>iPhonesoft</author>
        <category>RegExp</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909548</guid>
        <pubDate>Tue, 03 Sep 2024 17:37:46 +0000</pubDate>
        <title>Регулярное выражение для чисел в диапазоне от 100 до 999?</title>
        <link>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909548</link>
        <description><![CDATA[Majestio: <div class='tag-quote'><a class='tag-quote-link' href='https://forum.sources.ru/index.php?showtopic=449992&view=findpost&p=3909351'><span class='tag-quote-prefix'>Цитата</span></a> <span class='tag-quote__quote-info'>iPhonesoft &#064; <time class="tag-quote__quoted-time" datetime="2024-08-29T18:11:25+00:00">29.08.24, 18:11</time></span><div class='quote '>числа в диапазоне от 100, до 999</div></div><br>
Предполагается, что в строке только одно значение, чекаем ее от начала и до конца:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">^[1-9]\d{2}$</div></ol></div></div></div></div>]]></description>
        <author>Majestio</author>
        <category>RegExp</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909546</guid>
        <pubDate>Tue, 03 Sep 2024 16:38:59 +0000</pubDate>
        <title>Регулярное выражение для чисел в диапазоне от 100 до 999?</title>
        <link>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909546</link>
        <description><![CDATA[amk: Для чисел из диапазона [100…999] шаблон<br>
&#39;&#092;b[1-9]&#092;d&#092;d&#092;b&#39;<br>
&#092;b нужен, чтобы не ловить переменные типа abc234<br>
<br>
Для диапазона [100…500] число 500 приходится ловить отдельно<br>
&#39;&#092;b(?:[1-4]&#092;b&#092;b|500)&#092;b&#39;<br>
<br>
Для диапазона [101…500]<br>
&#39;&#092;b(?&#33;100)(?:[1-4]&#092;b&#092;b|500)&#092;b&#39;<br>
<br>
Если предполагается что в строке расположено только одно число, то &#092;b можно заменить на ^ и &#036;]]></description>
        <author>amk</author>
        <category>RegExp</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909351</guid>
        <pubDate>Thu, 29 Aug 2024 18:11:25 +0000</pubDate>
        <title>Регулярное выражение для чисел в диапазоне от 100 до 999?</title>
        <link>https://forum.sources.ru/index.php?showtopic=449992&amp;view=findpost&amp;p=3909351</link>
        <description><![CDATA[iPhonesoft: Добрый день,<br>
<br>
подскажите пожалуйста регулярное выражение, которое пропускает числа в диапазоне от 100, до 999.<br>
Число 999 может быть и меньше, например 781. 999 это максимальное значение.<br>
<br>
<a class='tag-url' href='https://stackoverflow.com/questions/25625469/how-can-i-create-a-regular-expression-regex-between-101-and-1000' target='_blank'>Нашел </a>вот такой пример, но если я передаю в выражение значение 501, оно его пропускает, несмотря на верхний предел в 500:<br>
<br>
<div class='tag-code'><span class='pre_code'></span><div class='code  code_collapsed ' title='Подсветка синтаксиса доступна зарегистрированным участникам Форума.' style=''><div><div><ol type="1"><div class="code_line">&#39;/^(?!100$)((?:[1-9]\d\d)|500)$/&#39;</div></ol></div></div></div></div><br>
<br>
Спасибо за помощь&#33;]]></description>
        <author>iPhonesoft</author>
        <category>RegExp</category>
      </item>
	
      </channel>
      </rss>
	