PHP指定截取字符串中的中英文或数字字符的实例分享


Posted in PHP onMarch 18, 2016

我们在开发过程中,经常会碰到截取中文英文数字等的问题,大家知道中文所占的字符和英文数字是不同的;然后我们就会在项目的common里写一些日常的函数包含时间计算转换和中英文字符截取的函数;比如截取中英文的函数没个几行代码恐怕拿不下来的吧,现在就告诉大家一个简单的(自己本地运行过的),如有问题,请大家多多指教
 

$c = 'ddaabbccaa';
$d = '地球需要我们每个人的爱护';
 
$frist1 = mb_substr( $c, 0, 1 ,"UTF-8"); // d
$delete_last1 = mb_substr($d, -1,1,"UTF-8");  // 护
echo $frist1.'+++'.$delete_last1.'<br/>'; // d+++护
 
$frist2 = mb_substr( $d, 0, 1 ,"UTF-8"); // 地
$delete_last2 = mb_substr($d, -1,1,"UTF-8");  // 护
echo $frist2.'+++'.$delete_last2.'<br/>'; // 地+++护
 
$e = '11aa22cc33';
$f = 'aa地球需要我们每个人的爱护';
$g = '地球需要我们每个人的爱护gg';
$h = '地球需要我们每个人的爱护';
$first3 = mb_substr( $e, 0, 1 ,"UTF-8"); // 1
$last3 = mb_substr( $f, 0, 1 ,"UTF-8"); // a
$delete_last3 = mb_substr($f, -1,1,"UTF-8");  // 护
$delete_last4 = mb_substr($g, -1,1,"UTF-8");  // g
$frist4 = mb_substr( $g, 0, 1 ,"UTF-8");    // 地
$delete_last5 = mb_substr($h, -1,1,"UTF-8");  // 护
 
echo $first3.'+++'.$last3.'---'.$delete_last3.'***'.$delete_last4.'&&&'.$frist4.'<br/>'; // 1+++a---护***g&&&地
echo $last3.'...'.$delete_last3.'<br/>';  // a...护
echo $frist4.'...'.$delete_last5.'<br/>'; // 地...护
// 这样不管字符串里是中英文数字等都是可以的无需判断,如:  ”地...护“ 或者 “地...” 或者 “...护”

PS:过滤字符串中空格的方法

去除字符串首尾中英文空格的方法:

function mbTrim($str)  
{  
  return mb_ereg_replace('(^( | )+|( | )+$)', '', $str);  
} 




下面的正则验证时过滤掉用户输入的连续空格,包括全角空格和半角空格


$user = mb_ereg_replace('^( | )+', '', $user);
$user = mb_ereg_replace('( | )+$', '', $user);

$age = mb_ereg_replace('^( | )+', '', $age);
$age = mb_ereg_replace('( | )+$', '', $age); 

$method = mb_ereg_replace('^( | )+', '', $method);
$method = mb_ereg_replace('( | )+$', '', $method);

$address = mb_ereg_replace('^( | )+', '', $address);
$address = mb_ereg_replace('( | )+$', '', $address);
PHP 相关文章推荐
php GeoIP的使用教程
Mar 09 PHP
PHP gbk环境下json_dencode传送来的汉字
Nov 13 PHP
php学习笔记之面向对象编程
Dec 29 PHP
ThinkPHP使用心得分享-上传类UploadFile的使用
May 15 PHP
PHP获取当前完整URL地址的函数
Dec 21 PHP
Laravel 5框架学习之用户认证
Apr 09 PHP
PHP中的流(streams)浅析
Jul 02 PHP
php解析url并得到url中的参数及获取url参数的四种方式
Oct 26 PHP
如何使用php等比例缩放图片
Oct 12 PHP
Yii2实现ActiveForm ajax提交
May 26 PHP
详解PHP防止直接访问.php 文件的实现方法
Jul 28 PHP
Ajax+PHP实现的删除数据功能示例
Feb 12 PHP
详解PHP的Yii框架中组件行为的属性注入和方法注入
Mar 18 #PHP
PHP的Yii框架中移除组件所绑定的行为的方法
Mar 18 #PHP
PHP的Yii框架中行为的定义与绑定方法讲解
Mar 18 #PHP
详解在PHP的Yii框架中使用行为Behaviors的方法
Mar 18 #PHP
深入讲解PHP的Yii框架中的属性(Property)
Mar 18 #PHP
Symfony2函数用法实例分析
Mar 18 #PHP
Symfony2联合查询实现方法
Mar 18 #PHP
You might like
php设计模式 FlyWeight (享元模式)
2011/06/26 PHP
php中session定期自动清理的方法
2015/11/12 PHP
Thinkphp框架开发移动端接口(2)
2016/08/18 PHP
PHP解决高并发的优化方案实例
2020/12/10 PHP
filemanage功能中用到的common.js
2007/04/08 Javascript
js小技巧--自动隐藏红叉叉
2007/08/13 Javascript
利用WebBrowser彻底解决Web打印问题(包括后台打印)
2009/06/22 Javascript
jQuery循环滚动新闻列表示例代码
2014/06/17 Javascript
javascript实现的闭包简单实例
2015/07/17 Javascript
简单实现JS对dom操作封装
2015/12/02 Javascript
JS自定义混合Mixin函数示例
2016/11/26 Javascript
jQuery基于ajax实现页面加载后检查用户登录状态的方法
2017/02/10 Javascript
vue2.0实现分页组件的实例代码
2017/06/22 Javascript
Avalonjs双向数据绑定与监听的实例代码
2017/06/23 Javascript
js实现日期显示的一些操作(实例讲解)
2017/07/27 Javascript
jQuery实现模糊查询的方法分析
2018/05/10 jQuery
vue 实现axios拦截、页面跳转和token 验证
2018/07/17 Javascript
5分钟学会Vue动画效果(小结)
2018/07/21 Javascript
vue遍历对象中的数组取值示例
2019/11/07 Javascript
python类参数self使用示例
2014/02/17 Python
PyCharm设置SSH远程调试的方法
2018/07/17 Python
Flask框架配置与调试操作示例
2018/07/23 Python
解决pycharm上的jupyter notebook端口被占用问题
2019/12/17 Python
详解python tkinter模块安装过程
2020/01/06 Python
python如何处理程序无法打开
2020/06/16 Python
BrandAlley英国:法国折扣奢侈品网上零售商
2017/07/03 全球购物
毕业自我鉴定
2013/11/05 职场文书
竞聘副主任科员演讲稿
2014/01/11 职场文书
2014光棍节大学生联谊活动方案
2014/10/10 职场文书
街道务虚会发言材料
2014/10/20 职场文书
国际贸易实务实训报告
2014/11/05 职场文书
2019预备党员转正申请书模板2篇!
2019/08/07 职场文书
MySQL系列之十五 MySQL常用配置和性能压力测试
2021/07/02 MySQL
Apache Pulsar结合Hudi构建Lakehouse方案分析
2022/03/31 Servers
win10忘记pin密码登录不了怎么办?win10忘记pin密码登不进去的解决方法
2022/07/07 数码科技
使用CSS实现六边形的图片效果
2022/08/05 HTML / CSS