本文目录一览:
- 1、php字符串截取函数用法分析
- 2、php正则截取指定符号之间的字符串?
- 3、php的字符串截取问题
- 4、php 怎么取两个符号中间字符?
- 5、怎么写PHP截取一个字符串里某个符号前面的字符串?
- 6、PHP按特殊字符截取字符串
php字符串截取函数用法分析
本文实例分析了php字符串截取函数用法。分享给大家供大家参考。具体分析如下:
php自带的截取字符串的函数只能处理英文,数字的不能截取中文混排的,后面一个示例比较好用,第一个主要是给初学者学学用的,具体代码如下:
复制代码
代码如下:?php
//构造字符串
$str
=
"ABCDEFGHIJKLMNOPQRSTUVWXYZ";
echo
"原字符串:b".$str."/bbr";
//按各种方式进行截取
$str1
=
substr($str,5);
echo
"从第5个字符开始取至最后:".$str1."br";
$str2
=
substr($str,9,4);
echo
"从第9个字符开始取4个字符:".$str2."br";
$str3
=
substr($str,-5);
echo
"取倒数5个字符:".$str3."br";
$str4
=
substr($str,-8,4);
echo
"从倒数第8个字符开始向后取4个字符:".$str4."br";
$str5
=
substr($str,-8,-2);
echo
"从倒数第8个字符开始取到倒数第2个字符为止:".$str5."br";
?
支持中英文混合截取,代码如下:
复制代码
代码如下:?php
/*
------------------------------------------------------
参数:
$str_cut
需要截断的字符串
$length
允许字符串显示的最大长度
程序功能:截取全角和半角(汉字和英文)混合的字符串以避免乱码
------------------------------------------------------
*/
function
substr_cut($str_cut,$length)
{
if
(strlen($str_cut)
$length)
{
for($i=0;
$i
$length;
$i++)
if
(ord($str_cut[$i])
128)
$i++;
$str_cut
=
substr($str_cut,0,$i)."..";
}
return
$str_cut;
}
?
希望本文所述对大家的php程序设计有所帮助。
php正则截取指定符号之间的字符串?
按照你的要求截取第一个【和最后一个】之间的字符串的php程序如下
(用正则表达式中的贪婪匹配模式,取第一捕获组的数据)
?php
$str="击链器【到手】得理多】";
$regex="/【(.*)】/";
preg_match_all($regex,$str,$result);
echo $result[1][0];
?
php的字符串截取问题
你是要获取【和】之间的内容,不管是什么都没关系,只要不是这两个符号,对吧,这可以使用正则表达式,也可以使用substr和strpos来实现,下面是正则表达式的例子:
?php
$s='div
class="container"div
id="container"p
【此中为要被截取的部分】/p/div';
if
(preg_match('#【(.*?)】#s',$s,$reg))
echo
$reg[1];
?
补充:
我觉得你是不是要获取p和/p之间的内容呀,也不说清楚,那就应该是下面的代码:
?php
$s='div
class="container"div
id="container"p
【此中为要被截取的部分】/p/div';
if
(preg_match('#div
id="container"p(.*?)/p/div#s',$s,$reg))
echo
$reg[1];
?
php 怎么取两个符号中间字符?
要截取指定字符串,其前后字符必须就要具有唯一性。
例:abc555xyz 和 abc666xyz
那么要截取555和666,他们相同的且唯一的前后标记则为:abc xyz
方法一:getNeedBetween函数截取
$zhi=getNeedBetween($str, 'abc','xyz');
方法二:正则截取
方法三:explode函数
字符分隔函数,如题例
$a=explode($str,"encodeURIComponent")
$a[1] 值可以得出encodeURIComponent之后的字符串 即("");
再使用substr函数切割。
方法四:substr函数
$start="abc";
$end="xyz";
$zhi=substr($input, strlen($start)+strpos($input, $start),(strlen($input) - strpos($input, $end))*(-1));-php以符号截取字符串
方法还可以举例很多种,大同小异。
怎么写PHP截取一个字符串里某个符号前面的字符串?
$a值的长度 ,以及参数个数都是未定的 .. 要去除掉最后一个符号以及后面所带的参数。
经常看到有新手问PHP有没有类似asp的left函数或right函数,实现截取某字符串左边或右边开始N个字符的函数。答案当然是有的。PHP中的substr函数就可以做的到,只不过PHP把二个函数合二为一了。-php以符号截取字符串
我们先来看一下PHP substr函数的语法:
string substr(string string, int start, int [length]),参数string为要操作的字符串,参数start为你要截取的字符串的开始位置,若start为负数时,则表示从倒数第start开始截取length个字符。-php以符号截取字符串
可选参数length为你要截取的字符串长度,若在使用时不指定则默认取到字符串结尾。若length为负数时,则表示从start开始向右截取到末尾倒数第length个字符的位置。
起初用这个函数时可能感觉到别扭,不过你要是把PHP substr函数的语法搞懂了,那他的功能比asp中的left和right,有过之无不及,非常好用。下面我们举例来看他的用法:
1、从第4个字符开始截取到字符串末尾,类似asp中的left:
?php $str = ""; echo substr($str,4); ?
输出: icoa.cn
2、PHP substr函数从右边截取3个字符,类似asp中的right:
?php $str = ""; echo substr($str,-3); ?
输出:.cn
3、PHP substr函数从第4个字符开始截取3个字符:
?php $str = ""; echo substr($str,4,3); ?
输出:ico
PHP按特殊字符截取字符串
explode()
函数把字符串分割为数组。
?php
$str
=
"Hello
world.
It's
a
beautiful
day.";
print_r
(explode("
",$str));
?
Array
(
[0]
=
Hello
[1]
=
world.
[2]
=
It's
[3]
=
a
[4]
=
beautiful
[5]
=
day.
)