中间的?号部分是乱码,想替换掉,如何用正则写?
不推荐循环,因为这个文本可能会很长
23 个解决方案
#1
你判断哪个字符在chr(127)之前,而且大于chr(127)即可
#2
有没有正则?
#3
有人么,帮帮忙
#4
我看你那都是乱码 如果文本都是乱码 要进行基于编码的转换操作
#5
没有啊,"这是一个??戟懈叚眂! "前面部分是正常的呀。
#6
用ord()函数得到Ascii码,多少值为乱码范围???
#7
没人解答,自已顶呀
#8
最好还是转码操作
#9
$output = preg_replace('/\?/','',$output);
#10
Ůʽ ŷķ 钁涗紭璐哄瞾鐗
#11
编码是对了,是utf-8
#12
没有正则表达式可以判断吗?
#13
string result = Regex.Replace("??aaff??","\\?","");
#14
utf-8 不亂的話 你把文本轉碼就好了
iconv('utf-8',big5,'文本')
iconv('utf-8',big5,'文本')
#15
关键是现在数据库里已有的数据记录里面有乱码,我想把它们清除出去,
但是要清除的必须要判断出记录里面有乱码呀,如何何判断????
但是要清除的必须要判断出记录里面有乱码呀,如何何判断????
#16
显示 ? 并不表示原文本是字符“?”
通常 gbk 文字被错误的截断后,截断处会显示“?”
utf-8 则显示“�”
通常 gbk 文字被错误的截断后,截断处会显示“?”
utf-8 则显示“�”
#17
现在关键是:怎样才算乱码??
就根据 ? 这个符号?
根据 生僻字??
就根据 ? 这个符号?
根据 生僻字??
#18
//试下这代码,没测试过.....读取正常正符,忽略不正常字符
function sub_str($str, $charset = "utf-8"){
$re['utf-8'] = "/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|[\xe0-\xef][\x80-\xbf]{2}|[\xf0-\xff][\x80-\xbf]{3}/";
$re['gb2312'] = "/[\x01-\x7f]|[\xb0-\xf7][\xa0-\xfe]/";
$re['gbk'] = "/[\x01-\x7f]|[\x81-\xfe][\x40-\xfe]/";
$re['big5'] = "/[\x01-\x7f]|[\x81-\xfe]([\x40-\x7e]|\xa1-\xfe])/";
preg_match_all($re[$charset], $str, $match);
return join("",$match[0]);
}
#19
楼上的兄弟,你这是忽略所有中文字符吧,我试过,所有汉字都忽了,这不是我想的结果呢。
#20
如有三条记录:
1.ILove这是真的
2.ŷķ
3.绱㈤┈閲屾捣鐩
如何删除2,3 记录????
1.ILove这是真的
2.ŷķ
3.绱㈤┈閲屾捣鐩
如何删除2,3 记录????
#21
自已顶了。。。痛苦中。。。
#22
治标不治本,你早把数据库、控制页面、处理页面、显示页面都做成utf-8不就没事,把这个标治好,你还会有其它的 等着你。建议你还是统一编码吧~~
#23
晕,这是过滤掉你不想要的字符,剩下的就是你想要的啦,,注意这不是只有中文..........
#1
你判断哪个字符在chr(127)之前,而且大于chr(127)即可
#2
有没有正则?
#3
有人么,帮帮忙
#4
我看你那都是乱码 如果文本都是乱码 要进行基于编码的转换操作
#5
没有啊,"这是一个??戟懈叚眂! "前面部分是正常的呀。
#6
用ord()函数得到Ascii码,多少值为乱码范围???
#7
没人解答,自已顶呀
#8
最好还是转码操作
#9
$output = preg_replace('/\?/','',$output);
#10
Ůʽ ŷķ 钁涗紭璐哄瞾鐗
#11
编码是对了,是utf-8
#12
没有正则表达式可以判断吗?
#13
string result = Regex.Replace("??aaff??","\\?","");
#14
utf-8 不亂的話 你把文本轉碼就好了
iconv('utf-8',big5,'文本')
iconv('utf-8',big5,'文本')
#15
关键是现在数据库里已有的数据记录里面有乱码,我想把它们清除出去,
但是要清除的必须要判断出记录里面有乱码呀,如何何判断????
但是要清除的必须要判断出记录里面有乱码呀,如何何判断????
#16
显示 ? 并不表示原文本是字符“?”
通常 gbk 文字被错误的截断后,截断处会显示“?”
utf-8 则显示“�”
通常 gbk 文字被错误的截断后,截断处会显示“?”
utf-8 则显示“�”
#17
现在关键是:怎样才算乱码??
就根据 ? 这个符号?
根据 生僻字??
就根据 ? 这个符号?
根据 生僻字??
#18
//试下这代码,没测试过.....读取正常正符,忽略不正常字符
function sub_str($str, $charset = "utf-8"){
$re['utf-8'] = "/[\x01-\x7f]|[\xc2-\xdf][\x80-\xbf]|[\xe0-\xef][\x80-\xbf]{2}|[\xf0-\xff][\x80-\xbf]{3}/";
$re['gb2312'] = "/[\x01-\x7f]|[\xb0-\xf7][\xa0-\xfe]/";
$re['gbk'] = "/[\x01-\x7f]|[\x81-\xfe][\x40-\xfe]/";
$re['big5'] = "/[\x01-\x7f]|[\x81-\xfe]([\x40-\x7e]|\xa1-\xfe])/";
preg_match_all($re[$charset], $str, $match);
return join("",$match[0]);
}
#19
楼上的兄弟,你这是忽略所有中文字符吧,我试过,所有汉字都忽了,这不是我想的结果呢。
#20
如有三条记录:
1.ILove这是真的
2.ŷķ
3.绱㈤┈閲屾捣鐩
如何删除2,3 记录????
1.ILove这是真的
2.ŷķ
3.绱㈤┈閲屾捣鐩
如何删除2,3 记录????
#21
自已顶了。。。痛苦中。。。
#22
治标不治本,你早把数据库、控制页面、处理页面、显示页面都做成utf-8不就没事,把这个标治好,你还会有其它的 等着你。建议你还是统一编码吧~~
#23
晕,这是过滤掉你不想要的字符,剩下的就是你想要的啦,,注意这不是只有中文..........