php或javascript正则表达式-将第一个字母和剩余字符串作为两个单独的值返回


php or javascript regex - return the first letter and the remaining string as 2 separate values

我在php/mysql中有一段代码,可以从数据库中获取id。id的形式是一个字母+一组3位数字。例如a123

我希望能够将代码拆分为两个变量$var1 = 'a'$var2 = '123'

我想到了使用php和正则表达式;查看CCD_ 4。我不知道如何拿到第一封信。我还考虑过在php中使用explode和类似的限制或str_split

$arr = str_split($str, 1);

但这将把它分成:1 2 3 4,我最终得到4个值,而不是2。有什么建议吗。(我也对用javascript做这件事持开放态度,我可以通过ajax传递它)

如果总是4个字符:

$var1 = substr($str, 0, 1);
$var2 = substr($str, 1, 3);

如果你真的想要一个正则表达式:

([a-zA-Z])([0-9]{3})

在这种情况下,确实不需要使用regexp。

$letter = $id[0];

$number = substr($id, 1);

使用JavaScript很容易(不需要正则表达式):

var str = 'a123';​​
var stra = str.substring(0,1); // returns 'a'
var strb = str.substr(1); // returns '123'