一个ubbcode的函数,速度很快.


Posted in PHP onOctober 09, 2006

前面见到有人发表
但是速度比较慢,也非常长
这里给出一种

function ubb($str) {  
$color=Array('red','blue','green');
$str=eregi_replace('\[url\]([a-zA-Z0-9@:%_.~#-\?&]+)\[\/url\]','<a href=http://\\1>\\1</a>',$str);//url
$str=eregi_replace('\[url=http://([a-zA-Z0-9@:%_.~#-\?&]+)\](.+)\[\/url\]','<a href=\\1 target=_blank>\\2</a>',$str);
$str=eregi_replace('\[url=([a-zA-Z0-9@:%_.~#-\?&]+)\](.+)\[\/url\]','<a href=http://\\1 target=_blank>\\2</a>',$str);
$str=eregi_replace('\[img\]([a-zA-Z0-9@:%_.~#-\?&]+)\[\/img\]','<img src=http://\\1>\\1</img>',$str);//img
$str=eregi_replace('\[h([1-6])\](.+)\[\/h[1-6]\]','<h\\1>\\2</h\\1>',$str);//h1-6
$str=eregi_replace('\[email\]([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3})\[\/email\]','<a href=mailto:\\1>\\1</a>',$str);//email
$str=eregi_replace('\[email=([_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3})\](.+)\[\/email\]','<a href=mailto:\\1>\\2</a>',$str);
$str=eregi_replace('\[b\](.+)\[\/b\]','<b>\\1</b>',$str);
$str=eregi_replace('\[i\](.+)\[\/i\]','<i>\\1</i>',$str);
$str=eregi_replace('\[size=(.+)\](.+)\[\/size\]','<font size=\\1>\\2</font>',$str);
$str=eregi_replace('\[color=(.+)\](.+)\[\/color\]','<font color=\\1>\\2</font>',$str);
$str=eregi_replace('\[sub\](.+)\[\/sub\]','<sub>\\1</sup>',$str);//下裱
$str=eregi_replace('\[sup\](.+)\[\/sup\]','<sup>\\1</sup>',$str);//上标
for($i=0;$i<=count($color);$i++)$str=eregi_replace('\['.$color[$i].'\](.+)\[\/'.$color[$i].'\]','<font color='.$color[$i].'>\\1</font>',$str);
$str=preg_replace("/\[quote\](.+?)\[\/quote\]/is","<blockquote><font size='1' face='Courier New'>quote:</font><hr>\\1<hr></blockquote>", $str);
$str=preg_replace("/\[code\](.+?)\[\/code\]/is","<blockquote><font size='1' face='Times New Roman'>code:</font><hr color='lightblue'><i>\\1</i><hr color='lightblue'></blockquote>", $str);
$str=preg_replace("/\[sig\](.+?)\[\/sig\]/is","<div style='text-align: left;color: darkgreen;margin-left: 5%'><br><br>--------------------------<br>\\1<br>--------------------------</div>", $str);
return $str;

PHP 相关文章推荐
smarty+adodb+部分自定义类的php开发模式
Dec 31 PHP
PHP file_get_contents 函数超时的几种解决方法
Jul 30 PHP
基于php在各种web服务器的运行模式详解
Jun 03 PHP
PHP Error与Logging函数的深入理解
Jun 03 PHP
Codeigniter的一些优秀特性总结
Jan 21 PHP
四种php中webservice实现的简单架构方法及实例
Feb 03 PHP
PHP验证码生成原理和实现
Jan 24 PHP
PHP学习记录之数组函数
Jun 01 PHP
thinkphp5实现无限级分类
Feb 18 PHP
java解析json方法总结
May 16 PHP
Laravel 实现数据软删除功能
Aug 21 PHP
解决laravel中日志权限莫名变成了root的问题
Oct 17 PHP
PHP中动态HTML的输出技术
Oct 09 #PHP
也谈截取首页新闻 - 范例
Oct 09 #PHP
PHP4实际应用经验篇(6)
Oct 09 #PHP
PHP4实际应用经验篇(7)
Oct 09 #PHP
PHP4实际应用经验篇(9)
Oct 09 #PHP
PHP4实际应用经验篇(8)
Oct 09 #PHP
一个简单的MySQL数据浏览器
Oct 09 #PHP
You might like
繁体中文转换为简体中文的PHP函数
2006/10/09 PHP
10个超级有用的PHP代码片段果断收藏
2015/09/23 PHP
php语言中使用json的技巧及json的实现代码详解
2015/10/27 PHP
谈谈从phpinfo中能获取哪些值得注意的信息
2017/03/28 PHP
用js实现下载远程文件并保存在本地的脚本
2008/05/06 Javascript
基于JQuery实现CheckBox全选全不选
2011/06/27 Javascript
浅谈Javascript鼠标和滚轮事件
2012/06/27 Javascript
javascript实现可拖动变色并关闭层窗口实例
2015/05/15 Javascript
AngularJS 使用$sce控制代码安全检查
2016/01/05 Javascript
node.js实现爬虫教程
2020/08/25 Javascript
jQuery使用cookie与json简单实现购物车功能
2016/04/15 Javascript
JS获取年月日时分秒的方法分析
2016/11/28 Javascript
浅谈键盘上回车按钮的js触发事件
2017/02/13 Javascript
Angular父组件调用子组件的方法
2018/04/02 Javascript
vue.js绑定事件监听器示例【基于v-on事件绑定】
2018/07/07 Javascript
详解Python Socket网络编程
2016/01/05 Python
利用python和ffmpeg 批量将其他图片转换为.yuv格式的方法
2019/01/08 Python
Python hexstring-list-str之间的转换方法
2019/06/12 Python
python从list列表中选出一个数和其对应的坐标方法
2019/07/20 Python
python实现静态web服务器
2019/09/03 Python
python统计指定目录内文件的代码行数
2019/09/19 Python
python爬取音频下载的示例代码
2020/10/19 Python
使用Python快速打开一个百万行级别的超大Excel文件的方法
2021/03/02 Python
SheIn俄罗斯:时尚女装网上商店
2017/02/28 全球购物
美国演唱会订票网站:Ticketmaster美国
2017/10/05 全球购物
美国打印机墨水和碳粉购物网站:QuikShip Toner
2018/08/29 全球购物
CSS代码检查工具stylelint的使用方法详解
2021/03/27 HTML / CSS
三年级班级文化建设方案
2014/05/04 职场文书
酒后驾车标语
2014/06/30 职场文书
好的促销活动方案
2014/08/21 职场文书
个人先进事迹材料范文
2014/12/29 职场文书
2015年计生工作总结范文
2015/04/24 职场文书
小学远程教育工作总结
2015/08/13 职场文书
校园运动会广播稿
2015/08/19 职场文书
基于go interface{}==nil 的几种坑及原理分析
2021/04/24 Golang
keepalived + nginx 实现高可用方案
2022/12/24 Servers