字符串全角半角转换
来源:互联网 发布:电工证模拟考试软件 编辑:程序博客网 时间:2024/06/05 02:58
/** * 字符串全角半角转换 * @param $str ,带转换字符串 * @param int $flag ,0|1 $flag=0半角转全角,$flag = 1 全角转半角, * @return string 字符串 */function strFullHalf($str, $flag = 0){ $str = trim($str); if (empty($str)) return ''; $quan = array(//全角 '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '-', ' ', ':', '.', ',', '/', '%', '#', '!', '@', '&', '(', ')', '<', '>', '"', ''', '?', '[', ']', '{', '}', '\', '|', '+', '=', '_', '^', '¥', ' ̄', '`' ); $ban = array( // 半角 '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', '-', ' ', ':', '.', ',', '/', '%', '#', '!', '@', '&', '(', ')', '<', '>', '"', '\'', '?', '[', ']', '{', '}', '\\', '|', '+', '=', '_', '^', '$', '~', '`' ); if ($flag == 1) { //全角转半角 foreach ($quan as $k => $v) { if (preg_match("/$v/", $str)) { $str = preg_replace("/$v/", $ban[$k], $str); } } } else { //半角转全角 $a = array('$', '(', ')', '*', '+', '.', '[', ']', '?', '\\', '^', "{", "}", '|', '/',); foreach ($ban as $k => $v) { if (!preg_match('/[0-9a-zA-Z]/', $v)) { if (in_array($v, $a)) { if (preg_match("/\\$v/", $str)) { $str = preg_replace("/\\$v/", $quan[$k], $str); } } else { if (preg_match("/$v/", $str)) { $str = preg_replace("/$v/", $quan[$k], $str); } } } } } return $str;}
阅读全文
0 0
- 字符串全角半角转换
- C# 字符串全角 半角转换
- java 字符串处理(全角转半角,半角转换全角)
- 字符串中全角半角字符的转换
- 全角转换成半角
- 半角全角转换代码
- /*--全角/半角转换
- 全角转换为半角
- Java转换全角半角
- javascript全角半角转换
- 全角半角转换函数
- 全角半角转换
- 全角半角转换函数
- javascript(全角--半角转换)
- 全角转换半角
- 全角半角转换函数
- 全角半角转换函数
- 全角/半角转换
- 【面向代码】学习 Deep Learning(一)Neural Network
- 如何为MyEclipse添加XML文档所使用的XML Schema
- C语言初步-第11讲:算术运算符与算术表达式(分离整数和小数部分)
- 数字格式化输出NumberFormat
- 设计模式之模板方法模式
- 字符串全角半角转换
- Java IO流学习总结
- 官方文档-理解ConstraintLayout表现上的好处
- 利用canvas的getImageData()方法制作《在线取色器》
- 专业论坛汇总2017版
- oracle 11gR2 ASM添加和删除磁盘
- Django入门-3:视图和网址
- CentOS7增加或修改SSH端口号
- 性能分析_linux服务器CPU_中断