使用PHP创建域模式lll/NNNNNN快捷方式
我想创建一个快捷域名模式的功能 该函数的唯一“定律”是,如果有一个字母在一行中重复超过5次,例如LLLLLLL或NNNNNN,甚至是混合字母LLLLLLL NNNNNN,我们将在所有情况下都得到一个快捷方式,即在其他情况下,L序列的6次将更改为L6,依此类推 现在我想缩短域名,例如,如果字符串是5个字母或数字,我想创建一个快捷方式使用PHP创建域模式lll/NNNNNN快捷方式,php,dns,str-replace,Php,Dns,Str Replace,我想创建一个快捷域名模式的功能 该函数的唯一“定律”是,如果有一个字母在一行中重复超过5次,例如LLLLLLL或NNNNNN,甚至是混合字母LLLLLLL NNNNNN,我们将在所有情况下都得到一个快捷方式,即在其他情况下,L序列的6次将更改为L6,依此类推 现在我想缩短域名,例如,如果字符串是5个字母或数字,我想创建一个快捷方式 例如: LLLLLLLL->L8 nnllllln->NNL7N llllllnnnnnn-> L6N6 起初我想使用“str_replace”函数,但问题是缩
- 例如:
- LLLLLLLL->L8
- nnllllln->NNL7N
- llllllnnnnnn-> L6N6
起初我想使用“str_replace”函数,但问题是缩短的例子太多了。你可以做一个简单的
preg_replace
来使用一个非常简单的模式来检查序列。这里还有一个非常类似的问题:
然后像这样调用它(传入字符串):
也许看看哪个比较相似,所以解决方案应该很容易适应。@TZHX完美谢谢。
function parseString( $string ) {
return preg_replace('/(.)\1*/e', 'strlen($0) . $1', $string);
}
echo parseString('NNLLLLLLLNNNLNLNNNN');