mysql - 在MySQL中提取字符串的数字部分

标签 mysql regex

我需要清理包含如下字符串的数据库:

<a href="/members/a/" title="a">a</a> ist der Gruppe <a href="/groups/3106/">a</a> beigetreten

或者也

<a href="/members/a/" title="a">a</a> ist der Gruppe <a href="/groups/3106_123/">a</a> beigetreten

或者也

<a href="/members/a/" title="a">a</a> ist der Gruppe <a href="/groups/3106_A/">a</a> beigetreten

或者也

<a href="/members/a/" title="a">a</a> ist der Gruppe <a href="/groups/3106A/">a</a> beigetreten

我只需要/groups/后面的数字部分,所以在这个例子中,只需要“3106”。该数字的长度是可变的。

剥离第一部分很容易:

SUBSTRING(field, locate('groups/', field)+7)

但是如何去掉其余部分呢?

最佳答案

既然您要求 PHP regex ,在这里:

(?<=\/groups\/)[0-9]+

PHP 示例代码:

$re = "/(?<=\\/groups\\/)[0-9]+/"; 
$str = "<a href=\"/members/a/\" title=\"a\">a</a> ist der Gruppe <a href=\"/groups/3106A/\">a</a> beigetreten"; 
preg_match_all($re, $str, $matches);

关于mysql - 在MySQL中提取字符串的数字部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29628382/

相关文章:

用于围绕搜索短语的单词集合的 PHP 正则表达式

Java Regex - 从字符串中提取主题标签

java - Spring-Hateoas Traverson 如何从三个表中获取信息

mysql - Solr 4.10.2 MySQL 导入失败并出现 java.io.EOFException

c++ mysql连接器从字符串中选择id

php - 修剪尾随零而不强制转换为 float

c++ - 正则表达式新手的东西

mysql - Rails、SQL 两列都匹配 !=

php - Laravel 5 - 如何在同一张表上执行左连接

Java正则表达式设置最小字符数