【问题标题】:PHP/MYSQL: Count number of characters before '.' or specific characterPHP/MYSQL:计算“。”之前的字符数或特定字符
【发布时间】:2016-02-15 16:05:45
【问题描述】:

我试图计算一个域在扩展之前有多少个字符。如何计算'.'之前的字符数?

因为我的 MySQL 数据库中有几条记录:

example.com
test.net
domain.co

输出将是

7
4
6

我如何使用 PHP 或 MySQL 做到这一点?

【问题讨论】:

    标签: php mysql count character


    【解决方案1】:

    您可以使用SUBSTRING_INDEX 来获取第一个“.”右侧的子字符串。对子字符串应用LENGTH 会返回所需的结果:

    SELECT LENGTH(SUBSTRING_INDEX(domain, '.', 1))
    FROM mytable
    

    Demo here

    【讨论】:

    • 我赞成这个,因为即使没有'。'它也能工作。在domain.
    【解决方案2】:

    一个简单的查询是这样的:

    SELECT (LOCATE('.', `column`) - 1) AS `length`
    FROM `table`
    

    LOCATE() 将返回字符的确切位置,因此减去 1 将得到之前字符的长度。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-28
      • 1970-01-01
      • 1970-01-01
      • 2014-01-30
      • 1970-01-01
      • 1970-01-01
      • 2018-07-23
      • 1970-01-01
      相关资源
      最近更新 更多