Heim >Backend-Entwicklung >PHP-Tutorial >正则从汉字字符串中取某一个汉字

正则从汉字字符串中取某一个汉字

WBOY
WBOYOriginal
2016-06-23 13:59:541101Durchsuche

<?phpheader("Content-type: text/html; charset=gb2312"); $regex = '/大(\xhh{1})好啊/';   //这里该如何去写,我不会正则,希望大家能帮我解答一下,谢谢$str = '大家好啊';$matches = array(); if(preg_match($regex, $str, $matches)){    var_dump($matches);}?>


我想取出“家”字


回复讨论(解决方案)

header("Content-type: text/html; charset=utf-8");$regex = '/大(.*?)好啊/';$str = '大家好啊';$matches = array();  if(preg_match($regex, $str, $matches)){    var_dump($matches);//array(2) { [0]=> string(12) "大家好啊" [1]=> string(3) "家" }}

header("Content-type: text/html; charset=utf-8");$regex = '/大(.*?)好啊/';$str = '大家好啊';$matches = array();  if(preg_match($regex, $str, $matches)){    var_dump($matches);//array(2) { [0]=> string(12) "大家好啊" [1]=> string(3) "家" }}
如果我str里面还有字母,得用gb2312格式的该如何去写?

有什么区别吗?

$regex = '/大(.*?)好啊/';$str = '大家好啊';$matches = array();   if(preg_match($regex, $str, $matches)){    var_dump($matches);}
array(2) { [0]=> string(8) "大家好啊" [1]=> string(2) "家" } 

有什么区别吗?

$regex = '/大(.*?)好啊/';$str = '大家好啊';$matches = array();   if(preg_match($regex, $str, $matches)){    var_dump($matches);}
array(2) { [0]=> string(8) "大家好啊" [1]=> string(2) "家" }  会乱码。$str = 'a大家好啊';$regex = '/a大(.*?)好啊/';

会乱码。$str = 'a大家好啊';$regex = '/a大(.*?)好啊/';

header("Content-type: text/html; charset=gb2312"); $regex = '/大(.*?)好啊/';$str = '大家好啊';$str= mb_convert_encoding($str,'gb2312','UTF-8');$regex = mb_convert_encoding($regex,'gb2312','UTF-8');;$matches = array();   if(preg_match($regex, $str, $matches)){    var_dump($matches);//array(2) { [0]=> string(12) "大家好啊" [1]=> string(3) "家" }}

怎么可能?

$regex = '/a大(.*?)好啊/';$str = 'a大家好啊';$matches = array();    if(preg_match($regex, $str, $matches)){    var_dump($matches);}
array(2) { [0]=> string(9) "a大家好啊" [1]=> string(2) "家" } 

文件编码? ??    

谢谢回答问题各位大神,版主大人可能没看到我问题要求的编码是gb2312的。尤文球迷给的答案我试过了可以的,编码问题总是令人蛋疼。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn