最近在写bbs中,遇上代码转换问题。寻找了很久,才得到一个比较完善的解决办法,可以彻底还原发文者的原文。

以下贴出,供大家指正。

系统:linux php4 oracle8i

//--标题,名字等字段入库处理(去首尾空格)

function trans_string_trim($str) {

$str=trim($str);

$str=eregi_replace(""","""",$str);

$str=stripslashes($str);

return $str;

}

//--文章入库处理,即textarea字段;

function trans_string($str) {

$str=eregi_replace(""","""",$str);

$str=stripslashes($str);

return $str;

}

//--从库中显示在表单中;在text中以trans转换,在textarea中,无需转换,直接显示

//--显示在web页面,过滤html代码;包括链接地址

function trans($string) {

$string=htmlspecialchars($string);

$string=ereg_replace(chr(10),"
",$string);

$string=ereg_replace(chr(32)," ",$string);

return $string;

}

//--显示在web页面,不过滤html代码;

function trans_web($string) {

$string=ereg_replace(chr(10),"
",$string);

$string=ereg_replace(chr(32)," ",$string);

return $string;

}

//--显示在web页面,过滤html代码及头尾空格,主要用于显示用户昵称

function trans_trim($string) {

$string=trim($string);

$string=htmlspecialchars($string);

$string=ereg_replace(chr(10),"
",$string);

$string=ereg_replace(chr(32)," ",$string);

return $string;

}

//--显示在span中;

function trans_span($string) {

$string=ereg_replace(chr(10),"/n",$string);

$string=ereg_replace(chr(32)," ",$string);

$string=ereg_replace(""",""",$string);

return $string;

}

//--在web上显示cookie,过滤html

function trans_cookie($str) {

$str=trans($str);

$str=stripslashes($str);

$str=eregi_replace("''","'",$str);

return $str;

}

?>

---------------------------

最后,顺带补充一点,如果在span中显示文章中的一段,采用substr取定长字符串时,记得在span的参数后面多加一个空格,否则遇上截到半个汉字时,会搞乱html代码。

php zhegnze_php 正则表达式相关推荐

  1. 通过正则表达式校验手机号码,拿走即用!

    校验手机号码 2021/01/06更新,电信新增了191号段 1. 单纯校验长度 2.正则表达式校验数字 3.正则表达式校验是否是大陆号码 4.正则表达式校验是否是香港号码 //校验长度private ...

  2. Linux shell 学习笔记(15)— shell 正则表达式

    1. 定义 BRE 模式 1.1 纯文本 第一条原则就是:正则表达式模式都区分大小写.这意味着它们只会匹配大小写也相符的模式. $ echo "This is a test" | ...

  3. re2正则表达式匹配引擎的c接口版本cre2的中文使用手册

    前言 re2 官方地址: https://github.com/google/re2 cre2 官方地址: https://github.com/marcomaggi/cre2 1 基本类型定义 不透 ...

  4. 正则表达式(括号)、[中括号]、{大括号}的区别小结

    正则表达式(括号).[中括号].{大括号}的区别小结 </h1><div class="clear"></div><div class=& ...

  5. Python中正则表达式用法 重点格式以这个为准_首看_各种问题

    20210811 https://www.jb51.net/article/101258.htm 一.惰性模式的概念: 此模式和贪婪模式恰好相反,它尽可能少的匹配字符以满足正则表达式即可,例如: va ...

  6. 正则语法完全正则表达式手册_语法格式重点

    20211202 https://blog.csdn.net/lc11535/article/details/103266263 该表达式打开re.U(re.UNICODE)标志. python –& ...

  7. 正则表达式 - 语法

    正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串.将匹配的子串替换或者从某个串中取出符合某个条件的子串等. 例如: r ...

  8. 正则表达式中的\.表示什么意思

    \ 这是引用符,用来将这里列出的这些元字符当作普通的字符来进行匹配.例如正则表达式\$被用来匹配美元符号,而不是行尾,类似的,正则表达式\.用来匹配点字符,而不是任何字符的通配符.

  9. ?:在正则表达式中什么意思

    "?:"非获取匹配,匹配冒号后的内容但不获取匹配结果,不进行存储供以后使用. 单独的"?":匹配前面的子表达式零次或一次. 当"?"紧跟在任 ...

最新文章

  1. java英文字符串大小写转换 必须使用_【Java基础】之字符串大小写转换不利用API....
  2. C++中运算符重载需要遵循的规则
  3. pandas计算滑动窗口中的最大值实战(Rolling Maximum in a Pandas Column):计算单数据列滑动窗口中的最大值、计算多数据列滑动窗口中的最大值
  4. golang 导出变量、函数 首字母必须大写
  5. STIMULUS(二) —— Hello, Stimulus
  6. canvas画出简陋版随鼠标转动眼睛且会眨眼的可爱樱桃小丸子
  7. SAS 读取数据文件
  8. Flutter FocusNode输入框焦点控制概述
  9. 敏捷外包工程系列之四:合理选择质量管理的等级(一)
  10. Generator的异步编程
  11. 信息系统综合知识二 信息化基础知识
  12. 红外热像仪中的“TD”是什么NE?
  13. 20172304 《程序设计与数据结构》第五周学习总结
  14. C++程序设计谭浩强 第三章(程序设计初步)习题答案(部分有改进)
  15. win8 报file://CBD 0xc0000034 蓝屏
  16. cairosvg在linux中的安装_Cairo编程
  17. 支线任务1 opencv学习(最后一次更新于2022.10.2,已完结)
  18. 盲盒App就是一元购吗?
  19. 4.Deferred
  20. SKYPE 网络电话试用手记

热门文章

  1. SAP Spartacus Page Layout - 页面布局设计
  2. SAP Spartacus里的injector
  3. SAP Spartacus和product相关的标准normalizer
  4. SAP WebClient UI的会话重启原理
  5. SAP Hybris安装包里自带的apache ant
  6. how SAP gateway parse_meta_tags
  7. SAP UI5 调试模式标志位的持久化原理 - local storage
  8. C4C HTML mashup debug
  9. 如何修改新浪微博对其他应用的授权
  10. S/4HANA extension field search的SQL语句是在什么地方生成的