MySQL - 在字符串中找到最长的未完整子串

时间:2014-05-24 16:37:12

标签: mysql

在MySQL数据库中,我有一个字符串'0001110011011110'

我想返回数字4,表示字符串中连续数最多的数字。

我能找到的最贴心的答案是对c Finding consecutive bit string of 1 or 0

中实施的类似问题的回答

对于这个MySQL新手的任何帮助将不胜感激:)

1 个答案:

答案 0 :(得分:0)

我不确定你是否对mysql中的任何类型的订单感兴趣,但是如果你正在寻找一个解决方案来找到字符串中最大数量的连续订单,这里有一个php解决方案你可以在表格的每一行上使用(显示数据时,或在何时显示):

<?php
function max_occurences($str,$search)
{
  if (''===$str) return 0;
  preg_match_all('!(['.$search.'])\\1*!', $str, $substring);
  return max(array_map('strlen', $substring[0]));
}

$search = '1';
$string = '0001110011011110';
echo max_occurences($string,$search);
?>