PHP - 正则表达式 - 特定字符前的数字匹配


PHP - Regular expression - number matching before specific character

我有这种字符串:

1234567890(没有特定字符数的数字)-(减号用作分隔符)文本

如何查看和提取前面的数字 - 符号?

使用如下所示的正则表达式:

preg_match('/^('d+)/', '123-something', $match);

这将捕获从字符串开头到第一个非十进制数字的所有十进制数字,结果将在 $match 变量中。

if (preg_match('/^('d+)/', $string, $match)) {
    $number = $match[1];
}

使用preg_split()

$bla=preg_split('#(?<='d)-(?=[a-z])#i', "1234567890-asdlkj");
echo $bla[0];

1234567890

如果你想要文本字段,你可以使用

echo $bla[1];

asdlkj