在不删除删除符的情况下拆分字符串


Split string without removing the delemiter

我需要使用拆分字符串

$words = preg_split("/['s,<>123456789]+/", $message);

但如果我这样做,我最终会得到来自CCD_ 1的裸词。

有没有一种方法可以在不删除分隔符的情况下拆分$message
例如:"asd1 ,3" -> ["asd","1"," ",","3"]

是的,如果您查看PHP手册中的preg_split,您会发现它可以将PREG_SPLIT_DELIM_CAPTURE标志与捕获组一起使用:

preg_split("/(['s,<>123456789]+)/", $message, -1, PREG_SPLIT_DELIM_CAPTURE);