MySQL正则表达式只返回匹配字符串

时间:2017-07-28 13:10:20

标签: mysql

我正在使用SQL工具箱构建一个在Invision Power Board托管站点中运行的查询,遗憾的是它似乎有限但我到目前为止还无法添加自定义SQL函数。我已经构建了一个mutli-table查询,但为了简单起见,这里将简化它。

以下是数据库示例和查询,以查找使用Regex在其About Me(field_11)配置文件中包含地址的配置文件。结果显示了关于我的全部内容,而不仅仅是匹配的字符串。

有没有办法构建查询,只返回正则表达式找到的匹配字符串而不使用定制的MySQL函数?

SQL数据库

CREATE TABLE core_pfields_content
    (`field_11` LONGTEXT);

INSERT INTO core_pfields_content
    (`field_11`)
VALUES
    ('<p> C++ eveloper</p> <p> AJ4ndBBLJZmRDVtC7JfGAVivhUXFDvWqKL </p>'),
    ('<p> Norwegian designer and illustrator working out of Oslo. </p>'),
    ('<p> Hello everyone, I am a Freelancer Photographer </p> <p> My portfolio: </p> <p> address: AW7fvzoEWAfiyyEwgXmgog525NCCeAxVmG </p>');

查询

SELECT field_11
FROM core_pfields_content
WHERE field_11 REGEXP '^.*([A][a-km-zA-HJ-NP-Z1-9]{26,33}).*';

结果

field_11
<p> C++ eveloper</p> <p> AJ4ndBBLJZmRDVtC7JfGAVivhUXFDvWqKL </p>
<p> Hello everyone, I am a Freelancer Photographer </p> <p> My portfolio: </p> <p> address: AW7fvzoEWAfiyyEwgXmgog525NCCeAxVmG </p>

http://sqlfiddle.com/#!9/02d1d/1

0 个答案:

没有答案