自定义ubb代码,preg_replace()函数的一些代码

 更新时间:2007年03月20日 00:00:00   作者:  
function ubb($Text) { 
  $Text=htmlspecialchars($Text); 
  $Text=ereg_replace("\r\n","<br>",$Text); 
  $Text=ereg_replace("\r","<br>",$Text); 
  $Text=nl2br($Text); 
  $Text=preg_replace("/\\t/is","  ",$Text); 
  $Text=preg_replace("/\[h1\](.+?)\[\/h1\]/is","<h1>\\1</h1>",$Text); 
  $Text=preg_replace("/\[h2\](.+?)\[\/h2\]/is","<h2>\\1</h2>",$Text); 
  $Text=preg_replace("/\[h3\](.+?)\[\/h3\]/is","<h3>\\1</h3>",$Text); 
  $Text=preg_replace("/\[h4\](.+?)\[\/h4\]/is","<h4>\\1</h4>",$Text); 
  $Text=preg_replace("/\[h5\](.+?)\[\/h5\]/is","<h5>\\1</h5>",$Text); 
  $Text=preg_replace("/\[h6\](.+?)\[\/h6\]/is","<h6>\\1</h6>",$Text); 

  $Text=preg_replace("/\[url\](http:\/\/.+?)\[\/url\]/is","<a href=\\1>\\1</a>",$Text); 
  $Text=preg_replace("/\[url\](.+?)\[\/url\]/is","<a href=\"http://\\1\">http://\\1</a>",$Text); 
  $Text=preg_replace("/\[url=(http:\/\/.+?)\](.*)\[\/url\]/is","<a href=\\1>\\2</a>",$Text); 
  $Text=preg_replace("/\[url=(.+?)\](.*)\[\/url\]/is","<a href=http://\\1>\\2</a>",$Text); 

  $Text=preg_replace("/\[img\](.+?)\[\/img\]/is","<img src=\\1>",$Text); 
  $Text=preg_replace("/\[color=(.+?)\](.+?)\[\/color\]/is","<font color=\\1>\\2</font>",$Text); 
  $Text=preg_replace("/\[size=(.+?)\](.+?)\[\/size\]/is","<font size=\\1>\\2</font>",$Text); 
  $Text=preg_replace("/\[sup\](.+?)\[\/sup\]/is","<sup>\\1</sup>",$Text); 
  $Text=preg_replace("/\[sub\](.+?)\[\/sub\]/is","<sub>\\1</sub>",$Text); 
  $Text=preg_replace("/\[pre\](.+?)\[\/pre\]/is","<pre>\\1</pre>",$Text); 
  $Text=preg_replace("/\[email\](.+?)\[\/email\]/is","<a href=\\1>\\1</a>",$Text); 
  $Text=preg_replace("/\[i\](.+?)\[\/i\]/is","<i>\\1</i>",$Text); 
  $Text=preg_replace("/\[b\](.+?)\[\/b\]/is","<b>\\1</b>",$Text); 
  $Text=preg_replace("/\[quote\](.+?)\[\/quote\]/is","<blockquote><font size='2' face='Courier New'>quote:</font><hr>\\1<hr></blockquote>", $Text); 
  $Text=preg_replace("/\[code\](.+?)\[\/code\]/is","<blockquote><font size='2' face='Courier New'>code:</font><hr color='lightblue'><i>\\1</i><hr color='lightblue'></blockquote>", $Text); 
  $Text=preg_replace("/\[sig\](.+?)\[\/sig\]/is","<div style='text-align: left; color: darkgreen; margin-left: 5%'><br><br>--------------------------<br>\\1<br>--------------------------</div>", $Text); 
return $Text; 

function str($msg){
  global $admin;
  if(!$admin[html]) $msg=htmlspecialchars($msg);
  if($admin[ubb]) $msg=ubb($msg);
  $msg=nl2br($msg); #处理message
  $msg= str_replace("\n","",$msg); #处理message
  $msg= str_replace("\r","",$msg); #处理message
  return $msg;
}
function error($msg){
global $admin;
?>

中的
$Text=preg_replace("/\[h2\](.+?)\[\/h2\]/is","<h2>\\1</h2>",$Text); 

里面的 ("/\[h2](.+?)\[\/h2]/is","<h2>\\1</h2>",$text)

/\[h2](.+?)\[\/h2]/is  转化成 <h2>\\1</h2>

/\[h2](.+?)\[\/h2]/is  里面的 这些"/\(.+?)\ "之类的符号是怎么看的?是什么意思?
______________________________________________________________________________________________

\是转意,\本身是特殊符号,如果要作为普通字符就要用\来转意,就是说\\表示()也是特殊符号,所以要用\转意

相关文章

  • 只能输入正整数的正则表达式及常用的正则表达式

    只能输入正整数的正则表达式及常用的正则表达式

    这篇文章主要介绍了只能输入正整数的正则表达式以及常用的正则表达式,需要的朋友可以参考下
    2018-09-09
  • JavaScript正则表达式校验非零的负整数实例

    JavaScript正则表达式校验非零的负整数实例

    本文分享了JavaScript正则表达式(^-[1-9]\d*$)校验非零的负整数实例代码,代码简单易懂,需要的朋友可以看下
    2016-12-12
  • Dreamweaver 正则替换(返回调用值)

    Dreamweaver 正则替换(返回调用值)

    非常不错的利用dreamweaver 正则实现的替换。并且有返回值的调用。
    2009-07-07
  • 如何使用正则表达式保留部分内容的替换功能

    如何使用正则表达式保留部分内容的替换功能

    其实工作中一直在用到正则表达式,只是用来替换的操作显然没有那么多,今天偶然遇到,还是有点陌生的,这里记录一下,下面这篇文章主要给大家介绍了关于如何使用正则表达式保留部分内容的替换功能,需要的朋友可以参考下
    2023-03-03
  • 一个替换目录结构的正则表达式 实现目录的增加

    一个替换目录结构的正则表达式 实现目录的增加

    这个功能挺重要大家习惯了用asp,php等在线的,用一些支持正则表达式的软件实现替换是更有效率的,容易测试等,读懂了这个就可以更方便的利用正则表达式为我们服务了。
    2009-12-12
  • Java正则表达式使用

    Java正则表达式使用

    本篇文章主要给大家介绍java在正则表达式的使用,本篇文章给大家主要介绍应用点在抓取网页中的email地址和代码统计,感兴趣的朋友一起看看吧
    2015-09-09
  • 深入浅出解析正则表达式-替换原则

    深入浅出解析正则表达式-替换原则

    本文给大家分享的正则表达式的替换原则,这里讲到的替换是只能在替换模式中识别的语言元素。感兴趣的朋友跟着小编一起学习吧
    2015-09-09
  • bash 中用于grep的正则表达式

    bash 中用于grep的正则表达式

    正则表达式是一类用于匹配文本的表达方式,常用于grep命令中表达检索条件。接下来通过本文给大家介绍bash 中用于grep的正则表达式,需要的朋友参考下吧
    2017-03-03
  • shell脚本中的正则表达式详解

    shell脚本中的正则表达式详解

    正则表达式是通过一些特殊字符的排序,用以删除、查找、替换一行或者多行文字字符串的程序,本文给大家介绍shell脚本正则表达式的相关知识,感兴趣的朋友一起看看吧
    2021-07-07
  • iOS中使用正则表达式NSRegularExpression 来验证textfiled输入的内容

    iOS中使用正则表达式NSRegularExpression 来验证textfiled输入的内容

    一个正则表达式(regexp)是由元字符和文字数字的文本字符,或者“文字的”(abc,123,及其他)混合组合而成的文本模式。 该类型用于匹配文本字符——并附有匹配的结果,是成功还是失败。 Regexps 主要用于规则文本匹配以及搜索和替换。
    2015-09-09

最新评论