Регулярное выражение для поиска самой длинной последовательности 0 между 1 в двоичной строке [закрыто]JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Регулярное выражение для поиска самой длинной последовательности 0 между 1 в двоичной строке [закрыто]

Сообщение Anonymous »

Я пытаюсь написать регулярное выражение для идентификации всех последовательных последовательностей нулей между 1 в двоичной строке. Затем я пытаюсь перебрать эти совпадения, чтобы определить самую длинную такую ​​подпоследовательность 0.
Ниже приведены примеры постановки задачи:
  • Для 7 двоичный код равен 111, и, следовательно, количество самой длинной подпоследовательности 0 равно> 0.
  • Для 5 двоичный код равен 101 и, следовательно, количество самой длинной подпоследовательности 0 => 1.
  • Для 10 двоичный код равен 1010, и, следовательно, количество самой длинной подпоследовательности 0 => 1.
Итак, я придумал вот такое регулярное выражение: и (10*)1, которые подходят для большинства моих случаев. Однако он не работает для определенного набора значений, которые имеют непрерывные вхождения длинных последовательностей нулей, заключенных в 1. Вот один из таких примеров:

Для целое число **145 ** двоичный код — 10010001, а регулярное выражение способно идентифицировать только первое вхождение 1001 и не идентифицирует последующую последовательность 10001, которая, очевидно, является самой длинной подпоследовательностью. И, таким образом, я получаю на выходе 2 вместо 3.


Подробнее здесь: https://stackoverflow.com/questions/788 ... ary-string
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»