正则表达式匹配(任何)(破折号)(数字),然后替换


Regex matching (anything)(dash)(numbers) and then replace

我需要一些关于正则表达式模式的帮助。

我有一些字符串以破折号结尾,字符串末尾有一个数字。

例:

asddasasdasddasadsdsa-1阿斯达斯达斯达斯-11阿萨斯达斯达斯达斯D-234

我想删除字符串末尾的(破折号)(数字),所以我需要匹配它们并用"替换它们。

我想删除字符串末尾仅后跟数字的 LAST 破折号。

例子:

ASDASD-1-1

必须是 ASDASD-1(删除最后一个破折号和数字)

ASDASD-1-1A 不得更改(没有"(破折号)(数字仅到字符串末尾)",因此没有任何变化)

谢谢!

尝试:

$str = preg_replace('/-'d+$/', '', $str);