avatar
new-yilia

一个简洁优雅的hexo主题

  • 归档
  • 分类
  • 相册
  • 音乐
所有文章 友链 关于我

{{ date }}

{{ time }}

avatar
new-yilia

一个简洁优雅的hexo主题

  • 主页
  • 归档
  • 分类
  • 相册
  • 音乐

php如何将中文字符串分割成数组

  2020-12-24        
字数统计: 283字   |   阅读时长: 1min

我们都知道字符串可以使用str_split分割成数组

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$str = 'abcdefg';  
$tem = str_plite($str);
var_dump($tem);

//输出以下内容
Array
(
[0] => a
[1] => b
[2] => c
[3] => d
[4] => e
[5] => f
[6] => g
)

但当遇到中文的时候就出问题了,中文使用str_split分割过后全都变成了乱码,怎么解决呢?

答案是使用正则表达式解决:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/**
* 分割中文字符串为数组
* @param String $string
* return Array
*/
function mb_str_split($string) {
return preg_split('/(?<!^)(?!$)/u', $string );
}

$string = '奋斗';
$charlist = mb_str_split($string);
var_dump($charlist);

//打印结果如下
Array
(
[0] => 奋
[1] => 斗
)

正则表达式/(?<!^)(?!$)/u可以匹配多字节字符,

(?<!^)和(?!$)都是零宽断言,前者表示此位置之前不匹配^,后者表示此位置之后不匹配$。

在正则中^和$单独用表示开头和末尾。

也就是说(?<!^)表示此位置之前不匹配开头,(?!$)表示此位置之后不匹配末尾。

所以这个split匹配到的部分,为每两个字的中间位置(但是没有匹配到任何实际的字符)。

  • 乱码
  • 字符串
php高精度计算
PHP 7 增加了对返回值类型声明的支持。
目录
哦,目录不存在

预览:

0  字
评论
  • Latest
  • Oldest
  • Hottest
Powered by Waline v2.15.8

81 篇 | 18.1k
1970-2025 muyu | 粤ICP备2022064346号
  • 所有文章
  • 友链
  • 关于我

tag:

  • 基础
  • 疑难杂症
  • 乱码
  • 性能
  • 目录
  • 文件
  • sublime
  • wsl
  • tp
  • composer
  • Xunsearch
  • 阴影
  • 端口
  • Docker
  • api
  • ajax
  • 测试
  • git
  • 表单
  • 上传
  • iframe
  • 数组
  • JSON
  • ios
  • url
  • 格式化
  • 最大
  • 最小
  • 移动端
  • 字符串
  • fun
  • 去重
  • 日期
  • 动画
  • json
  • 安全
  • mysql
  • 端口占用
  • 替换
  • 图像识别
  • mime
  • xml
  • 高精度
  • 爬虫
  • 图片处理
  • 队列
  • php
  • npm
  • node
  • 工具代码备份
  • meta
  • 正则
  • 调试
  • 分页

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

    			  jsonContent:
    				meta: false
    				pages: false
    				posts:
    				  title: true
    				  date: true
    				  path: true
    				  text: false
    				  raw: false
    				  content: false
    				  slug: false
    				  updated: false
    				  comments: false
    				  link: false
    				  permalink: false
    				  excerpt: false
    				  categories: false
    				  tags: true
    			

  • 乐手网
  • 红码博客

世事无常