php实现的简单压缩英文字符串的代码


Posted in PHP onApril 24, 2008

PHP,适应于上帖简单加密后的密文

<?php  
//replacement来自上个版本的加密替换       function compress_func($match) {return strlen($match[0]).$match[0]{0};}  
     function uncompress_func($match) {return str_repeat($match[2], $match[1]);}  
     function compress($str) {  
        $i = 0;  
        $pattern = array();  
        while(isset($replacement{$i})) array_push($pattern, "/".$replacement{$i++}."{2,}/");  
        return preg_replace_callback($pattern, "compress_func", $str);  
    }  
     function uncompress($str) {  
        return preg_replace_callback("/(d+)(w)/", "uncompress_func", $str);  
    }  
?> 

AWK,通用格式
#!/bin/awk  
function compress(str, _ARGVEND_, str_out, str_len, i, s, l) {  
    str_out = "";  
    str_len = length(str);  
    s = "";  
    l = 1;  
    for(i =1; i <= str_len; i++) {  
        if(substr(str, i, 1) == s) l++;  
        else {  
            if(s != "") {  
                if(l > 1) str_out=str_out""l  
                str_out=str_out""s;  
            }  
            s = substr(str, i, 1);  
            l = 1;  
        }  
    }  
    return str_out;  
}  
function uncompress(str, _ARGVEND_, str_out, str_len, i, c) {  
    str_out = "";  
    str_len = length(str);  
    for(i =1; i <= str_len; i++) {  
        c = 0;  
        while(substr(str, i, 1)~/[0-9]/) {  
            c = c*10+substr(str, i, 1);  
            i++;  
        }  
        if(c < 1) c = 1;  
        while(c--) str_out = str_out""substr(str, i, 1);  
    }  
    return str_out;  
}
PHP 相关文章推荐
php smarty模版引擎中变量操作符及使用方法
Dec 11 PHP
PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数
Apr 09 PHP
Android ProgressBar进度条和ProgressDialog进度框的展示DEMO
Jun 19 PHP
thinkphp控制器调度使用示例
Feb 24 PHP
PHP+FFMPEG实现将视频自动转码成H264标准Mp4文件
Sep 24 PHP
thinkphp实现like模糊查询实例
Oct 29 PHP
在WordPress中实现发送http请求的相关函数解析
Dec 29 PHP
PHP中header用法小结
May 23 PHP
php微信开发之上传临时素材
Jun 24 PHP
php处理复杂xml数据示例
Jul 11 PHP
php  单例模式详细介绍及实现源码
Nov 05 PHP
PHP如何防止XSS攻击与XSS攻击原理的讲解
Mar 22 PHP
php格式化工具Beautify PHP小小BUG
Apr 24 #PHP
使用PHP的日期与时间函数技巧
Apr 24 #PHP
追求程序速度,而不是编程的速度
Apr 23 #PHP
编写漂亮的代码 - 将后台程序与前端程序分开
Apr 23 #PHP
php REMOTE_ADDR之获取访客IP的代码
Apr 22 #PHP
Gregarius中文日期格式问题解决办法
Apr 22 #PHP
PHP下用rmdir实现删除目录的三种方法小结
Apr 20 #PHP
You might like
PHP函数utf8转gb2312编码
2006/12/21 PHP
30 个很棒的PHP开源CMS内容管理系统小结
2011/10/14 PHP
2个Codeigniter文件批量上传控制器写法例子
2014/07/25 PHP
JSON字符串传到后台PHP处理问题的解决方法
2016/06/05 PHP
PHP实现页面静态化的超简单方法
2016/09/06 PHP
firefox事件处理之自动查找event的函数(用于onclick=foo())
2010/08/05 Javascript
jQuery控制TR显示隐藏的几种方法
2014/06/18 Javascript
JavaScript获取网页、浏览器、屏幕高度和宽度汇总
2014/12/18 Javascript
js实现文字在按钮上滚动的方法
2015/08/20 Javascript
跟我学习javascript的严格模式
2015/11/16 Javascript
JavaScript仿支付宝密码输入框
2015/12/29 Javascript
JS中创建函数的三种方式及区别
2016/03/13 Javascript
js根据手机客户端浏览器类型,判断跳转官网/手机网站多个实例代码
2016/04/30 Javascript
深入理解jQuery之防止冒泡事件
2016/05/24 Javascript
JavaScript制作弹出层效果
2016/12/02 Javascript
BootStrap Table对前台页面表格的支持实例讲解
2016/12/22 Javascript
jQuery插件ContextMenu自定义图标
2017/03/15 Javascript
nodejs使用express创建一个简单web应用
2017/03/31 NodeJs
跟混乱的页面弹窗说再见
2019/04/11 Javascript
Win10下Python环境搭建与配置教程
2016/11/18 Python
python入门教程 python入门神图一张
2018/03/05 Python
Windows下anaconda安装第三方包的方法小结(tensorflow、gensim为例)
2018/04/05 Python
kafka-python 获取topic lag值方式
2019/12/23 Python
flask 框架操作MySQL数据库简单示例
2020/02/02 Python
纽约JewelryAffairs珠宝店:精细金银时尚首饰
2017/02/05 全球购物
优秀导游先进事迹材料
2014/01/25 职场文书
公司端午节活动方案
2014/02/04 职场文书
学校先进集体事迹材料
2014/05/31 职场文书
小学生三分钟演讲稿
2014/08/18 职场文书
师德师风整改措施
2014/10/24 职场文书
2015年普法依法治理工作总结
2015/05/26 职场文书
导游词之无锡丝业博物馆
2019/11/12 职场文书
sql查询结果列拼接成逗号分隔的字符串方法
2021/05/25 SQL Server
十大最强妖精系宝可梦,哲尔尼亚斯实力最强,第五被称为大力士
2022/03/18 日漫
浅析JavaScript中的变量提升
2022/06/01 Javascript
win11电脑关机鼠标灯还亮怎么解决? win11关机后鼠标灯还亮解决方法
2023/01/09 数码科技