文章目录
-
>>> 字符串部分 <<< - 第一题 【 trim(),ltrim(),rtrim() 】
- 第二题【strcmp(\$str1,\$str2) , strcasecmp(\$str1,\$str2) , strncmp(\$str1,\$str2,\$len)】
- 第三题 【str_replace()的用法 】
- 第四题 【explode()的用法 】
- 第五题 【substr()的用法 】
-
>>> 正则表达式部分 <<< - 第六题 【 preg_match ()的用法 】
- 第七题 【 preg_match ()检查普通网址 】
- 第八题 【preg_match_all ()的用法】
- 第九题 【preg_replace() 字符串的替换】
- 第十题 【preg_split() 字符串的分割】
>>> 字符串部分 <<<
第一题 【 trim(),ltrim(),rtrim() 】
trim(),ltrim(),rtrim()分别用于删除字符串两边,最左边,最右边与第二个参数相同的 字符,如果第二个参数省略,则删除空格、制表符、”\n”、”\r”、”\0”、”\x0b”等特殊字符。
代码 >>>
<?php
$str1="hello";
$str2="aaaahelloa";
echo trim($str1)."<br/>";
echo ltrim($str2,"a")."<br/>";
echo trim($str2,"ah")."<br/>";
运行结果截图 >>>
第二题【strcmp($str1,$str2) , strcasecmp($str1,$str2) , strncmp($str1,$str2,$len)】
strncasecmp($str1,$str2,$len)四个函数中 strcmp()函数用于区分大小写的字符串的比较;strcasecmp()用于不区分大小写的字符串的比较;strncmp()用于比较字符串的一部分,从字 符串的开头进行比较,$len 是比较的长度;strncasecmp()和 strncmp()一样,只是不区分大小写。
代码 >>>
<?php
echo strcmp("aBcd","abcd");
echo strcasecmp("aBcd","abcd");
echo strncmp("abcd","aBcd",3);
echo strncasecmp("abcde","aBcde",3);
运行结果截图 >>>
第三题 【str_replace()的用法 】
str_replace($search,$replace,$subject)为字符串替换函数,其中$search 为要被替换的 字符串,$replace 是用来替换的字符串,$subject)是要被更改的句子。此函数还可以实现多对 一、多对多的替换。
代码 >>>
<?php
$str1 = "I love you";
$replace1 = "monkey";
echo str_replace("you", $replace1, $str1) . "<br>";
$str2 = "what is YOUR name";
$replace2 = array("a", "o", "A", "O");
echo str_replace($replace2, "", $str2) . "<br/>";
$array1 = array("a", "b", "c");
$array2 = array("d", "e", "f");
echo str_replace($array1, $array2, "abcdef");
运行结果截图 >>>
第四题 【explode()的用法 】
explode($separator,$string)此函数返回一个数组,每个元素都是 $string 的一个子串,它们被$separator 分割。Implode($glue,$pieces)函数用于将数组转化成字符串,其中$glue 为 用于连接字符串的连接符,$pieces 为要连接字符串的数组。
代码 >>>
<?php
$str="使用 空格 分割 数组";
$array = explode("",$str);
print_r($array);
echo "<br/>";
$array = array("hello","how","are","you","!");
$str2=implode(" ",$array);
echo $str2;
运行结果截图 >>>
第五题 【substr()的用法 】
substr($string, $start, $length)为取子字符串函数,其中 $string 为被分解的字符串, 字符串的各字符位置($start)从 0 开始:如果$start 参数为负数,$string 字符串倒数第$start 个字符开始取得$length 长度的子字符串。如果$length 参数为负数,则截取到$string 字符串 倒数第$length 个字符为止。
代码 >>>
<?php
echo substr("abcdef", 1) . "<br/>";
echo substr("abcdef", 1, 3) . "<br/>";
echo substr("abcdef", 0, 8) . "<br/>";
echo substr("abcdef", -1, 1) . "<br/>";
echo substr("abcdef", -3, 1) . "<br/>";
echo substr("abcdef", 0, -1) . "<br/>";
echo substr("abcdef", 2, -1) . "<br/>";
echo substr("abcdef", 4, -4) . "<br/>";
echo substr("abcdef", -3, -1) . "<br/>";
运行结果截图 >>>
>>> 正则表达式部分 <<<
第六题 【 preg_match ()的用法 】
利用 preg_match ()检查出生日期的匹配;要求出生日期的年份为 19XX 或 20XX,月份为(0)1-12,日期为(0)1-31.
代码 >>>
<?php
$date = "1998-10-09";
$len = preg_match('/^((19|20)\d{2})\-(0?d|1[012])\-(0?\d|[12]\d|3[01])$/', $date, $regs);
echo "$regs[0]"."<br/>";
echo "$regs[1]"."<br/>";
echo "$regs[3]"."<br/>";
echo $len."<br/>";
运行结果截图 >>>
第七题 【 preg_match ()检查普通网址 】
代码 >>>
<?php
$str="http://www.php.net/index.html";
$pattern="/^(http:\/\/)?([^\/]+)/i";
$cnt_1=preg_match ($pattern,$str,$subpatarr_1);
print_r($subpatarr_1);
echo "<br/>";
echo $cnt_1;
运行结果截图 >>>
第八题 【preg_match_all ()的用法】
代码 >>>
<?php
$str="Call 0574-5211314 or 021-58215821 or 94219421";
$pattern="/(0\d{2,3}-)?(\d{7,8})/";
$cnt_1=preg_match_all($pattern,$str,$subpatarr_1);
print_r($subpatarr_1);
echo "<br/>";
echo $cnt_1;
echo "<br/>";
运行结果截图 >>>
第九题 【preg_replace() 字符串的替换】
代码 >>>
<?php
$str="hello world";
echo preg_replace('/[aeo]/','x',$str);
$res='<a href="11-1.php">hello</a>';
echo preg_replace('/hello/',$res,$str)."<br/>";
$string="新浪,网易,腾讯,雅虎";
$p1[0]="/新浪/";
$p1[1]="/网易/";
$p1[2]="/腾讯/";
$p1[3]="/雅虎/";
$p1[4]="/Tahoo/";
$p1[5]="/Tencent/";
$rep1[1]="163";
$rep1[0]="Sina";
echo preg_replace($p1,$rep1,$string)."<br/>";
ksort($p1);
ksort($rep1);
echo preg_replace($p1,$rep1,$string)."<br/>";
运行结果截图 >>>
第十题 【preg_split() 字符串的分割】
代码 >>>
<?php
$str="what|is.your,name ?";
$arr=preg_split('/[|.,]/',$str);
print_r($arr);
echo "<br/>";
$str2="PHP hypertext language programming";
$arr2=preg_split("/ /",$str2,3);
print_r($arr2);
运行结果截图 >>>