3132702442's recent timeline updates
3132702442

3132702442

V2EX member #218691, joined on 2017-03-03 15:05:00 +08:00
3132702442's recent replies
Jul 10, 2017
Replied to a topic by 3132702442 服务器 有关一个 IIS URL REWRITE 的问题
.......
Jul 6, 2017
Replied to a topic by 3132702442 服务器 有关一个 IIS URL REWRITE 的问题
11111111111111111
看得吊炸天了
@qdwang 赚的到钱就是王道 管他用什么服务器系统
这个回答我给 120 个赞。
最新可行代码:
```
function set_kg_webname($str,$symbol = ' '){
$sss = '';
$arr = ch2arr($str);
foreach ($arr as $i=>$ch){
if(preg_match('/[\x80-\xff]+/',$ch) && preg_match('/[\x80-\xff]+/',$arr[($i-1)])){
$sss .=$symbol.$ch;
} else{
$sss .=$ch;
}
}
return $sss;
}

function ch2arr($str){
$array = array();
$hou=array("","","","","");
$qian=array(" "," ","\t","\n","\r");
$str = str_replace($qian,$hou,$str);
$length = mb_strlen($str, 'gbk');
if($length<9)return $array;
for ($i=0; $i<$length; $i++)
$array[] = mb_substr($str, $i, 1, 'gbk');
return $array;
}
```
想结帖了。。。
@wudanyang 嗯,你这思路我基本上也是这么想的,去判断前后是不是中文,然后加空格,然后 gbk 中文这种的不好分割啊,分割之后就是乱码了。
@hanzhao utf 文件下面我有个代码是可行的,但是 gbk 的我还没找到。

utf8 文件的 php 可行代码:

···
function str_split_unicode($str, $l = 0) {
if ($l > 0) {
$ret = array();
$len = mb_strlen($str, "GBK");
for ($i = 0; $i < $len; $i += $l) {
$ret[] = mb_substr($str, $i, $l, "GBK");
}
return $ret;
}
return preg_split("//u", $str, -1, PREG_SPLIT_NO_EMPTY);
}

$s = '言归正传,我要用 PHP 实现给一行字符 q1 串 gfg 中,前面和后面是中文、中文符 11 号的时候就加 333 空格,是英文、数字、英文符号的时候就不加';
$a = str_split_unicode($s);
$asii = range('!', '~');
$is_ascii = true;
foreach ($a as $value) {
if (in_array($value, $asii)) {
echo $value;
$is_ascii = true;
}else{
echo $is_ascii ? '' : ' ' , $value;
$is_ascii = false;
}
}···
@KylinRoc 呃呃
@KylinRoc 你提供的这个的话算是单词句子分句吧?
About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   803 Online   Highest 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 19ms · UTC 20:13 · PVG 04:13 · LAX 13:13 · JFK 16:13
♥ Do have faith in what you're doing.