<?
$str1 = " 市场市场。";
$str1 = preg_replace('/ | /is','', $str1);
echo $str1.'<br>';$str2 = " 疾病。";
$str2 = preg_replace('/ | /is','', $str2);
echo $str2;
?>
$str1 = " 市场市场。";
$str1 = preg_replace('/ | /is','', $str1);
echo $str1.'<br>';$str2 = " 疾病。";
$str2 = preg_replace('/ | /is','', $str2);
echo $str2;
?>
$str1 = " 市场市场。";
$str1 = preg_replace('/ /is','', $str1);
echo $str1.'<br>';$str2 = " 疾病。";
$str2 = preg_replace('/ /is','', $str2);
echo $str2;
?>
↓
这个是什么空格?2个空格还是1个空格?
不过要要在配置文件中更改支持这个功能mb_ereg_replace
(4.2.0 - 4.3.2 only)mb_ereg_replace -- Replace regular expression with multibyte support
Description
string mb_ereg_replace ( string pattern, string replacement, string string [, array option])
“场。”的内码是B3 A1 A1 A3,其中A1 A1被替换掉后,就显示内码为B3 A3的“常”
“病。”的内码是B2 A1 A1 A3,其中A1 A1被替换掉后,就显示内码为B2 A3的“玻”
<?
$str1 = " 市场市场。";
$str1 = preg_replace('/ /is','', $str1);
echo $str1.'<br>';$str2 = " 疾病。";
$str2 = preg_replace('/ /is','', $str2);
echo $str2;
?>
echo ord('。');这个中文的ASCII 都是161。是这个原因吧?to hahawen(变态的大龄青年)
还有其他的办法么?不能改动PHP配置。
$str1 = " 市场市场。";
$str1 = preg_replace('/ /is','', $str1);
echo $str1.'<br>';$str2 = " 疾病。";
$str2 = preg_replace('/ /is','', $str2);
echo $str2;
?><?
$str1 = " 市场市场。";
$str1 = preg_replace('/ /is','', $str1);
echo $str1.'<br>';$str2 = " 疾病。";
$str2 = preg_replace('/ /is','', $str2);
echo $str2;
?>这两个有什么区别呀,楼主?
==================
第一个
preg_replace('/XXXX/is','', $str1);
第二个
preg_replace('/XXXXEE/is','', $str1);
==================不可用的原因是我们不知道文字前后是否有EE,并且我们不能采用替换的方法来加上一个EE以便形成XXXXEE来完成匹配替换。大家继续讨论一下吧,我很郁闷 ~_~!
=======================================
|161<br>
。|161<br>
!|163<br>
、|161<br>
“|161<br>
”|161<br>
《|161<br>
》|161<br>
·|161<br>
===============$ar = array(" ","");
foreach($ar as $v)
{
echo "$v :".ord($v[0]).",".ord($v[1])."\n";
}输出=================
:161,161
:163,136