PHP-拆分字符串
另一个n00b问题PHP-拆分字符串,php,string,split,Php,String,Split,另一个n00b问题 $ab = "A00000001" echo $a; // gives result "A" echo $b; // gives result "1" $ab = "B01250" echo $a; // gives result "B" echo $b; // gives result "1250" 在上述两个例子中,将“ab”转换为“a”和“b”的简单方法是什么 谢谢 您可以使用正则表达式执行此操作: $match = preg_match('@^(\w+)(\d
$ab = "A00000001"
echo $a; // gives result "A"
echo $b; // gives result "1"
$ab = "B01250"
echo $a; // gives result "B"
echo $b; // gives result "1250"
在上述两个例子中,将“ab”转换为“a”和“b”的简单方法是什么
谢谢 您可以使用正则表达式执行此操作:
$match = preg_match('@^(\w+)(\d+)@', $input);
$letter = $match[1];
$number = $match[2];
您可以使用正则表达式执行此操作:
$match = preg_match('@^(\w+)(\d+)@', $input);
$letter = $match[1];
$number = $match[2];
有关substr的更多信息,请参见:
有关substr的更多信息可在此处找到:如果这是您所说的“easiet single way”(简易单程)的意思,那么它会更短: 如果愿意,请调整正则表达式:
如果这就是您所说的“简易单程”的意思,那么它就更短了: 如果愿意,请调整正则表达式:
更新后,假设第二个“部分”始终是一个整数,我先是在玩regex,但我知道有一种更优雅的方式。谢谢还要感谢其他人。:)更新后假设第二个“部分”始终是一个整数,我第一次是在玩弄正则表达式,但我知道有一种更优雅的方式。谢谢还要感谢其他人。:)如果0不是偏移后的第一个数字呢?如果0不是偏移后的第一个数字呢?为了满足要求,可以修改正则表达式以排除前面的0:“@^(\w+0*(\d+)@”好的,但是如果他使用$number作为int,这无关紧要。要使其满足要求,您可以修改正则表达式以排除前面的0:“@^(\w+)0*(\d+@)”好的,但如果他使用$number作为int,这无关紧要。
list($a,$b) = preg_split('/0+/',$ab);