使用 PHP 创建域模式 LLLLLLL/NNNNNN 快捷方式
Create domain pattern LLLLLLL/NNNNNN shortcut with PHP
我想创建一个快捷域名模式的功能。
唯一"law"的功能是,如果有一个字母连续重复5次以上,比如LLLLLLL或NNNNNN,甚至是混合字母LLLLLLLLNNNNNN,我们在所有情况下都会得到一个快捷方式即6次L序列会变成L6,其他情况依此类推
现在我想缩短域,例如,如果字符串是按顺序排列的 5 个字母或数字,我想创建一个快捷方式。
- 例如:
- LLLLLLLL -> L8
- NNLLLLLLLN -> NNL7N
- LLLLLLNNNNNN ->
L6N6.
一开始我想使用 "str_replace" 函数,但问题是有无数个缩短的例子。
您可以做一个简单的 preg_replace
,它将使用一个非常简单的模式来检查序列。这里也有一个非常相似的问题 - Encode/compress sequence of repeating integers
function parseString( $string ) {
return preg_replace('/(.)*/e', 'strlen([=10=]) . ', $string);
}
然后这样调用(传入字符串):
echo parseString('NNLLLLLLLNNNLNLNNNN');
我想创建一个快捷域名模式的功能。
唯一"law"的功能是,如果有一个字母连续重复5次以上,比如LLLLLLL或NNNNNN,甚至是混合字母LLLLLLLLNNNNNN,我们在所有情况下都会得到一个快捷方式即6次L序列会变成L6,其他情况依此类推
现在我想缩短域,例如,如果字符串是按顺序排列的 5 个字母或数字,我想创建一个快捷方式。
- 例如:
- LLLLLLLL -> L8
- NNLLLLLLLN -> NNL7N
- LLLLLLNNNNNN -> L6N6.
一开始我想使用 "str_replace" 函数,但问题是有无数个缩短的例子。
您可以做一个简单的 preg_replace
,它将使用一个非常简单的模式来检查序列。这里也有一个非常相似的问题 - Encode/compress sequence of repeating integers
function parseString( $string ) {
return preg_replace('/(.)*/e', 'strlen([=10=]) . ', $string);
}
然后这样调用(传入字符串):
echo parseString('NNLLLLLLLNNNLNLNNNN');