我对于正则,不是很熟悉,正则对
字符
串的处理非常的广泛,什么都可以做,有时只需要它的一点
功能
就可以做很多的
字符串
处理了,路(.*?)就是通配符的基本正则表达式,对正则我不熟悉,经常需要用类似通配符的处理字符串,所以我 写了一个可以使用通配符的简单的处理字符串替换的
函数
tihuan_str()
正则其他的功能实现就比较难了,路可变的数量(把字符分类,路数字,这些地方不好把握)
php代码:
//写一个通配符替换的字符串的函数
//使用说明:tihuan_str($fustr,$str1,$str2)函数使用方法:$fustr---要处理的字符串,$str1---可以使用(*)通配符的要替换的字符串 , $str2-----替换为的新字符串,最后返回处理结果$fustr;
$fustr="sdfs<table 大股东大股东dgdg>dfs大股东</table>df<table dhfht>asdasd单个</table>";;
$str1='<table(*)>(*)</table>';
$str2='(我被替换啦)';
function tihuan_str($fustr,$str1,$str2)
{if(empty($fustr)||empty($str1)){echo '参数12不得空字符<br>';return $fustr; }
$wz1=0;
$arr=explode('(*)',$str1);
$arr1=array();
$k=0;
//过滤空字符
for($i=0;$i<count($arr);$i++)
{if($arr[$i]!==''){$arr1[$k]=$arr[$i];$k++;}
$cishu=0;
while($wz1<strlen($fustr))
{//单个替换的过程
$jishu=0;
for($i=0;$i<count($arr1);$i++)
if(($wz=strpos($fustr,$arr1[$i],$wz1))!==false)
{ if($i==0)$ks=$wz;
if($i==count($arr1)-1)$js=$wz+strlen($arr1[$i]);
$wz1=$wz+strlen($arr1[$i]);
$jishu++;
else break;
//当符合条件时
if($jishu==count($arr1)){$cishu++;
echo '第'.$cishu.'次替换:<br>';
echo 'begin:'.($ks+1).' end:'.$js.'<br>';
$leftstr=substr($fustr,0,$ks);
$rightstr=substr($fustr,$js);
if(!$rightstr)$rightstr='';
$fustr=$leftstr.$str2.$rightstr;
$wz1=$ks+strlen($str2);
echo 'next:'.($wz1+1).'<br>';
echo $fustr.'<br>';
else{echo '停止<br>';break;}
echo '<br><br>';
return $fustr;
$str=tihuan_str($fustr,$str1,$str2);
echo '替换效果:'.$str;
我对于正则,不是很熟悉,正则对字符串的处理非常的广泛,什么都可以做,有时只需要它的一点功能就可以做很多的字符串处理了,路(.*?)就是通配符的基本正则表达式,对正则我不熟悉,经常需要用类似通配符的处理字符串,所以我 写了一个可以使用通配符的简单的处理字符串替换的函数tihuan_
正则表达式
定义
正则表达式
(regular expression)描述了一种
字符串
匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做
替换
或者从某个串中取出符合某个条件的子串等。
列目录时, dir *.txt或ls *.txt中的*.txt就不是...
正则表达式
,又称正规表示式、正规表示法、正规表达式、规则表达式、常规表示法(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。
正则表达式
使用
单个
字符串
来描述、匹配一系列匹配某个句法规则的
字符串
。在很多文本编辑器里,
正则表达式
通常被用来检索、
替换
那些匹配某个模式的文本。
在计算机(软件)技术中,
通配符
可用于代替字符。
在操作
php
导出 csv中,遇到一个问题,因为csv是根据逗号分隔的,所以导出的数据中,如果有逗号 就会生成新的单元格,所以要
使用
字符串
替换
函数 ,将可能带有的逗号的数据
替换
下。
替换
函数有以下几个
strtr()
str_replace()
substr_replace()
preg_replace()
1.strtr()
strtr(string,from,to) string 必需。规定要转...
<?
php
header("content-type:text/html;charset=utf-8");
mb_regex_encoding('utf-8');//设置
正则
替换
所用到的编码
$a = '2013年06月06';
$a = mb_ereg_replace('[^0-9]', '-', $a);//注意这里的和preg_replace不