Php 获取两个字符之间的字符串

Php 获取两个字符之间的字符串,php,mysql,select,Php,Mysql,Select,如何获取句点最后一次出现之前的字符串以及第一次出现之前的空格?MYSQL 我无法解释,但这里有一个视觉辅助。多谢各位 您可以在sql语句中使用“Like”条件您可以使用MYSQLs函数: SUBSTRING_INDEX(str, delim, count); 参考: 比如: SELECT (SUBSTRING_INDEX('Lennon, John W.','John',2),' ',-1); 它将以W.的形式提供输出。使用Sambhaji的答案,我制定了这个公式,它适用于所有实例(上面的示

如何获取句点最后一次出现之前的字符串以及第一次出现之前的空格?MYSQL

我无法解释,但这里有一个视觉辅助。多谢各位


您可以在sql语句中使用“Like”条件

您可以使用MYSQLs函数:

SUBSTRING_INDEX(str, delim, count);
参考:

比如:

SELECT (SUBSTRING_INDEX('Lennon, John W.','John',2),' ',-1);

它将以
W.的形式提供输出。

使用Sambhaji的答案,我制定了这个公式,它适用于所有实例(上面的示例)


您将如何使用LIKE解决OP的问题?你应该真正展示一个例子,或者它应该作为一个评论而不是一个答案来写。而且,这看起来更像是正则表达式的工作,而不是直接的字符串比较。这只适用于第一个示例,但这给了我一个想法。我要用这个试试。非常感谢你。
SELECT 
    (CASE
        WHEN LENGTH(NAME) - LENGTH(REPLACE(NAME, '.', '')) = 1
            THEN CONCAT( SUBSTRING_INDEX(SUBSTRING_INDEX(NAME,'.',1),' ',- 1),'. ')
        WHEN LENGTH(NAME) - LENGTH(REPLACE(NAME, '.', '')) = 2 
            THEN CONCAT( SUBSTRING_INDEX(SUBSTRING_INDEX(NAME,'.',1),' ',- 1),'. ', SUBSTRING_INDEX(SUBSTRING_INDEX(NAME,'.', 2),' ', -1), '.')
        ELSE NULL
    END) NAME