gpt4 book ai didi

php - 使用 PHP 和正则表达式,在一组匹配字符之间插入一个字符

转载 作者:可可西里 更新时间:2023-11-01 00:51:39 26 4
gpt4 key购买 nike

我想在一组匹配的字符之间插入一个字符,使用正则表达式定义组并使用 PHP 将字符放入匹配项中。 Looking here, 我看到它可能需要 PHP 递归匹配,尽管我认为可能有更简单的方法。

为了说明这一点,我试图在一个数字旁边有 2 个或更多字母的组合时在字符串中插入一个空格。字母和数字之间应插入空格。示例“AXR900DE3”应返回“AXR 900 DE 3”。

一个答案是使用 preg_split 迭代地分解字符串并沿途插入空格吗?我已经开始尝试使用 preg_replace 下面的模式 2+ 字母后跟一个数字(我还需要使用一个模式,一个数字后跟 2+ 个字母),但我需要另一个步骤来插入该匹配项之间的空格.

$sku = "AXR900DEF334";
$string = preg_replace('/(?<=[A-Z]{2}[\d])/',' ', $sku);

最佳答案

你不需要做递归。如果我对你的理解正确,你应该能够做到这一点:

$sku = "AXR900DEF334";
$string = preg_replace('/((?<=[A-Z]{2})(?=[0-9])|(?<=[0-9])(?=[A-Z]{2}))/',' ', $sku);
echo $string;

输出

AXR 900 DEF 334

当字母在数字之前和之后时,这将匹配。

关于php - 使用 PHP 和正则表达式,在一组匹配字符之间插入一个字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5951216/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com