如何将样式放到数字的特定数字?

时间:2017-03-15 13:29:37

标签: php mysql

[$number=$row['plate_number'];//it will have many numbers ex:78666,78686,78006

ex:$number="78666";  // random sample

in this ex:first 786 digit in red color and remaining 66 in normal color(78666)

ex1:$number="78006";  // random sample

在这个ex1中: 我们把786换成红色,78位红色,然后是00正常颜色,6应​​该是红色(78006)

这是我想要的链接: enter image description here

1 个答案:

答案 0 :(得分:0)

实现这一目标的最佳方法是使用正则表达式:

$string = preg_replace('#([0-9]*?)(7)([0-9]*?)(8)([0-9]*?)(6)([0-9]*?)#', '$1<span style="color: red;">$2</span>$3<span style="color: red;">$4</span>$5<span style="color: red;">$6</span>$7', $string);

此正则表达式将匹配:

  1. ([0-9]*?):零个或多个数字字符,而不是替换它们
  2. (7):第一次出现7,将其替换为<span style="color: red;">7</span>
  3. ([0-9]*?):零个或多个数字字符,而不是替换它们
  4. (8):第一次出现8,将其替换为<span style="color: red;">8</span>
  5. ([0-9]*?):零个或多个数字字符,而不是替换它们
  6. (6):第一次出现6,将其替换为<span style="color: red;">6</span>
  7. ([0-9]*?):零个或多个数字字符,而不是替换它们
  8. 如果在该字符串中找不到786,则无效。

    编辑为每个?添加了[0-9]*,以使量词不合理(如here所述)