导航:首页 > 编程语言 > php字符串分隔符

php字符串分隔符

发布时间:2022-04-18 12:17:15

A. php中字符串分割

你研究一下 正则表达式 吧。
PHP的 split() 函数兼容正则表达式语法。
关于以上用法,给个例子你参考:
<?php
// 分隔符可以是斜线,点,或横线
$date = "04/30/1973";
list($month, $day, $year) = split ('[/.-]', $date);
echo "Month: $month; Day: $day; Year: $year<br />\n";
?>

提示
preg_split() 函数使用了 Perl 兼容正则表达式语法,通常是比PHP函数split()更快的替代方案。如果不需要正则表达式的威力,则使用 explode() 更快,这样就不会招致正则表达式引擎的浪费。

B. php分割字符串

/**
*宽字符串分割
*
*@paramunknown_type$str
*@returnunknown
*/
functionsplit($str){
$ret=array();
$len=strlen($str);
for($i=0;$i<$len;$i++){
//判断编码位数
$code=ord($str[$i]);
//单字节0
if($code>>7==0){
$ret[]=$str[$i];
}
//4字节1111
elseif($code>>4==15){
if($i<$len-3){
$ret[]=$str[$i].$str[$i+1].$str[$i+2]+$str[$i+3];
$i+=3;
}
}
//3字节111
elseif($code>>5==7){
if($i<$len-2){
$ret[]=$str[$i].$str[$i+1].$str[$i+2];
$i+=2;
}
}
//双字节11
elseif($code>>6==3){
if($i<$len-1){
$ret[]=$str[$i].$str[$i+1];
$i+=1;
}
}
}
return$ret;
}

上面是分隔中文字串为数组的.

这种方式性能比正则表达式要高点. GBK , UTF-8 编码都是支持的.

分隔完毕之后, 你在循环数组, 设置步长为3 . 然后就可以拼接出你要的了.

C. php根据换行分割字符串

Windows下是以\r\n换行。不过结果是一样的啦(你也可以分割好后再替换掉\r。其实如果你输出的话浏览器是会忽略\r的),只要不是苹果机(以\r换行)就不会出问题。

D. 字符串中(内容)有多个分隔符PHP explode 怎么分割数组

explode — 使用一个字符串分割另一个字符串, 它的函数原型如下:

array explode    ( string $delimiter   , string $string   [, int $limit  ] )

因此,它不可以提供多个字符作为分割符来进行分割数组。

如果要使用多个字符串作为分割字符,可以用另外一个函数 preg_split。

通过一个正则表达式分隔字符串, 它的函数原型如下:

array preg_split    ( string $pattern   , string $subject   [, int $limit = -1   [, int $flags = 0  ]] )

举例:

<?php
$str = "aa--bb++cc**dd";
$arr = preg_split('/[-+\*]+/is', $str);
echo "<pre>";
print_r($arr);
echo "</pre>";
它的输出结果是:

Array
(
   [0] => aa
   [1] => bb
   [2] => cc
   [3] => dd
);

E. php中如何给类似于下面这样一个字符串添加分隔符呢

一种是用正则表达式!全部获取到数组,然后再implode
二就是,替换了,若果全是像你写的,那么$str=str_replace('/><img','/>,<img',$str);

F. php 分割字符串

这100分来得好爽哦,楼上的正解。

关于str_split的详细例子程序:

<?php

$str="HelloFriend";

$arr1=str_split($str);
$arr2=str_split($str,3);

print_r($arr1);
print_r($arr2);

?>
上例将输出:

Array
(
[0]=>H
[1]=>e
[2]=>l
[3]=>l
[4]=>o
[5]=>
[6]=>F
[7]=>r
[8]=>i
[9]=>e
[10]=>n
[11]=>d
)

Array
(
[0]=>Hel
[1]=>lo
[2]=>Fri
[3]=>end
)

但是,str_split不支持汉字,会把汉字分为两半,需要把汉字当为一个字符进行处理的时候,需要自己编写函数。

G. php正则表达式字符串分割

在每个 .box 前面加个标示符,通过这个标示符分割

$source="<divclass='box'>
<divclass='title'>嗨,我是标题君1号</div>
<divclass='masll'>hi,我是副标题</div>
</div>
<divclass='box'>
<divclass='title'>嗨,我是标题君1号</div>
<divclass='masll'>hi,我是副标题</div>
</div>
<divclass='box'>
<divclass='title'>嗨,我是标题君1号</div>
<divclass='masll'>hi,我是副标题</div>
</div>";

$source=str_replace("<divclass='box'>","@@<divclass='box'>",$source);
$source=preg_replace('/^@@/','',$source);
$ary=explode('@@',$source);

print_r($ary);

H. php如何分割中文字符串

php分割中文字符串,如果直接用PHP函数“str_split”来分割,会出现乱码,因为中文字符长度和英文字符长度是不一样的。

所以,可以建立新的函数先把字符转成ASCII值,接着通过判断不同字符的长度来正确分割中文字符串,把结果存入数组,最后再用PHP函数“join”在字符间插入百分号。

具体参考代码如下:

<?php
functionstr_split_utf8($str){
$split=1;
$array=array();
for($i=0;$i<strlen($str)){
$value=ord($str[$i]);
if($value>127){
if($value>=192&&$value<=223)$split=2;
elseif($value>=224&&$value<=239)$split=3;
elseif($value>=240&&$value<=247)$split=4;
}else{
$split=1;
}
$key=NULL;
for($j=0;$j<$split;$j++,$i++){
$key.=$str[$i];
}
array_push($array,$key);
}
return$array;
}
$string="网络知道www..cn";
$arr1=str_split_utf8($string);
echojoin("%",$arr1);
?>

I. php 如何分割字符串的每个字符

可以当数组使用,例如:

<?php
$s='hello';
for($i=0;$i<strlen($s);$i++)echo$s[$i]." ";
?>

程序注意显示字符串的每个字符,输出:

h

e

l

l

o

J. php的分隔符是哪一个

分隔符可以使任意非字母数字、非反斜线、非空白字符。经常使用的分隔符是正斜线(/)、hash符号(#)
以及取反符号(~)

阅读全文

与php字符串分隔符相关的资料

热点内容
dns使用加密措施吗 浏览:172
php独立运行 浏览:530
手机sh执行命令 浏览:727
云服务器的角色 浏览:733
单片机频率比例 浏览:840
我的世界服务器如何关闭正版验证 浏览:504
如何查roid服务器上的 浏览:130
安卓手机主板如何撬芯片不掉电 浏览:249
php各个框架的优缺点 浏览:101
php1100生成数组 浏览:359
以后做平面设计好还是程序员好 浏览:552
云服务器应用管理 浏览:438
饥荒云服务器搭建过程 浏览:186
可编程控制器优点 浏览:99
压缩垃圾车说明书 浏览:28
五轮书pdf 浏览:802
单片机定时流水中断系统流水灯 浏览:701
u8如何连接服务器配置 浏览:68
动力在于缓解压力 浏览:867
报考科一用什么app 浏览:346