请问关于正则表达式 http://www.phpe.net/articles/151.shtml 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 echo eregi("[0-9a-zA-Z\x80-\xff]","中文abc1232434!@#%$@%")?"T":"F";echo eregi("[0-9a-zA-Z\x80-\xff]","中文abc1232434!@#%$@%\n")?"T":"F";哥们不行啊,输出都是T的 <?php/* function:match string author: date:2003.7.15 parameter: str=the string you want to match return: total=the string match the partern*/function matchstring($str) { global $total; preg_match_all("/[0-9a-zA-Z\x80-\xff]/",$str,$arr); for($i=0; $i<count($arr[0]); $i++) { $total[$i].= $arr[0][$i]; } Return $total;}$str="中文,abc1232434!@#%$@%";$string=matchstring($str);for($i=0; $i<count($string); $i++) { $str_all.=$string[$i]; }echo "$str_all";?> <?$str = "中文abc1232434!@#%$@%";$flag = ereg_replace("[0-9a-zA-Z\x80-\xff]",'', $str);if ($flag == '') { echo 'F';} else { echo 'T';}$str = "中文abc1232434";$flag = ereg_replace("[0-9a-zA-Z\x80-\xff]",'', $str);if ($flag =='') { echo 'F';} else { echo 'T';} 可能我没有说清楚比如一个字符串,如果它全是中文字府和a-z,A-Z,0-9 组成就ture否则如果有@#$\n\r\t等就是False $str="csdn程序员大本营";if(preg_match("/[0-9a-zA-Z\x80-\xff]+/",$str)echo "符合条件";elseecho "不符合"; 那不更简单吗?if (eregi("/[0-9a-zA-Z\x80-\xff]/",$string)){ echo "true";}else { echo "false";} Goodname 请看:$str="csdn程序员大本营\n";if(preg_match("/[0-9a-zA-Z\x80-\xff]+/",$str))echo "符合条件";elseecho "不符合"; usb 的无论怎么都是false:$str="csdn程序员大本营@#$sdfsdfsdfsdf\t\t\t";if (eregi("/[0-9a-zA-Z\x80-\xff]/",$str)){ echo "true";}else { echo "false";} 你的字符串里面有\n\t什么的,当然是false! 你的字符串里面有\n\t什么的,当然是false! \n\t里面的这个\不属于你说的a-z0-9中文,这个字符集合丫? $str="csdn程序员大本营\n";if(preg_match("/^[0-9a-zA-Z\x80-\xff]+$/",$str))echo "符合条件";elseecho "不符合";注意:对给出的$str仍然输出"符合条件",这是因为\n在结尾,被忽略了,并只忽略1个。你弄两个试试? 是比较奇怪,不知道为什么要忽略一个。ereg不忽略$str="csdn程序员大本营\n";if(ereg("/^[0-9a-zA-Z\x80-\xff]+$/",$str))echo "符合条件";elseecho "不符合";//不符合 preg_match("/(^[0-9a-zA-Z\x80-\xff]+$)/",$str,$regs);那么 $regs[1] 为 csdn程序员大本营 并无后面的\n按说(^[0-9a-zA-Z\x80-\xff]+$)是应该包括 \n 的,因为他在$前实际上并没有,所以说最后的一个\n被忽略了 preg_match("/(^[0-9a-zA-Z\x80-\xff]+$)/",$str,$regs);那么 $regs[1] 为 csdn程序员大本营 并无后面的\n按说(^[0-9a-zA-Z\x80-\xff]+$)是应该包括 \n 的,因为他在$前实际上并没有,所以说最后的一个\n被忽略了 preg_match("/(^[0-9a-zA-Z\x80-\xff]+$)/",$str,$regs);那么 $regs[1] 为 csdn程序员大本营 并无后面的\n按说(^[0-9a-zA-Z\x80-\xff]+$)是应该包括 \n 的,因为他在$前实际上并没有,所以说最后的一个\n被忽略了 好像也就忽略了结尾的一个\n不会忽略\t\r的继续关注,礼拜一揭帖,谢谢大家帮忙祝大家周末玩的愉快,俺明天随团去北戴河了 ereg("/^[0-9a-zA-Z\x80-\xff]+$/",$str) thinkphp中RBAC的问题 登录邮箱问题 csdn 论坛源代码 html借助php防cc攻击 一个Mod_rewrite问题 PHP能否实现用户离线后的定期操作? PHPExcel 向单元格插入图片就换行的问题 PHP中如何实现进程间通讯? 小菜鸟弱弱的问一个问题:) 强烈推荐-----免费的100M空间,国际域名,支持ASP、PHP等。 163信箱问题 用URL提交的变量里含有特殊字符!---------单引号
echo eregi("[0-9a-zA-Z\x80-\xff]","中文abc1232434!@#%$@%\n")?"T":"F";
哥们不行啊,输出都是T的
/*
function:match string
author:
date:2003.7.15
parameter:
str=the string you want to match
return:
total=the string match the partern
*/
function matchstring($str) {
global $total;
preg_match_all("/[0-9a-zA-Z\x80-\xff]/",$str,$arr);
for($i=0; $i<count($arr[0]); $i++) {
$total[$i].= $arr[0][$i];
}
Return $total;
}
$str="中文,abc1232434!@#%$@%";
$string=matchstring($str);
for($i=0; $i<count($string); $i++) {
$str_all.=$string[$i];
}
echo "$str_all";?>
$str = "中文abc1232434!@#%$@%";
$flag = ereg_replace("[0-9a-zA-Z\x80-\xff]",'', $str);
if ($flag == '') {
echo 'F';
} else {
echo 'T';
}
$str = "中文abc1232434";
$flag = ereg_replace("[0-9a-zA-Z\x80-\xff]",'', $str);
if ($flag =='') {
echo 'F';
} else {
echo 'T';
}
比如一个字符串,如果它全是中文字府和a-z,A-Z,0-9 组成就ture
否则如果有@#$\n\r\t等就是False
echo "符合条件";
else
echo "不符合";
echo "true";
}
else {
echo "false";
}
echo "符合条件";
else
echo "不符合";
$str="csdn程序员大本营@#$sdfsdfsdfsdf\t\t\t";if (eregi("/[0-9a-zA-Z\x80-\xff]/",$str)){
echo "true";
}
else {
echo "false";
}
echo "符合条件";
else
echo "不符合";注意:对给出的$str仍然输出"符合条件",这是因为\n在结尾,被忽略了,并只忽略1个。你弄两个试试?
echo "符合条件";
else
echo "不符合";//不符合
那么 $regs[1] 为 csdn程序员大本营 并无后面的\n
按说(^[0-9a-zA-Z\x80-\xff]+$)是应该包括 \n 的,因为他在$前
实际上并没有,所以说最后的一个\n被忽略了
那么 $regs[1] 为 csdn程序员大本营 并无后面的\n
按说(^[0-9a-zA-Z\x80-\xff]+$)是应该包括 \n 的,因为他在$前
实际上并没有,所以说最后的一个\n被忽略了
那么 $regs[1] 为 csdn程序员大本营 并无后面的\n
按说(^[0-9a-zA-Z\x80-\xff]+$)是应该包括 \n 的,因为他在$前
实际上并没有,所以说最后的一个\n被忽略了
不会忽略\t\r的继续关注,礼拜一揭帖,谢谢大家帮忙祝大家周末玩的愉快,俺明天随团去北戴河了