×

php字符串数组比较大小

php字符串数组比较大小(php 字符串 数组)

admin admin 发表于2023-04-05 13:46:08 浏览79 评论0

抢沙发发表评论

本文目录一览:

php 数组与字符串比较问题

?php

$str = "平行四边形是四边形";

//先替换'四边形'

//替换之后,平行四边形就会变成: 平行span四边形/span

//所以再替换: 平行span四边形 为: 'span平行四边形'

$arr = array('四边形','平行span四边形','是');

$to=array('span四边形/span','span平行四边形','span是/span');

for($i=0;$icount($arr);$i++)

{

$str=str_replace($arr[$i],$to[$i],$str);

}

echo $str;

?

请问PHP如何比对两组字符串,其中包含大小字母、中英文

$a = 'a:Marc-André GronDin';

$b = 'b:Marc-André Grondin,莫妮亚·肖克里,Charlotte St-Martin';

$arrA = explode(':', implode(':', explode(',', $a)));

$arrB = explode(':', implode(':', explode(',', $b)));

var_dump(array_intersect($arrA, $arrB)); // 区分大小写

$e = array_map(function($d){

    return strtolower($d);

} , $arrA);

$arrC = array_map(function($c) use ($e){

    if ( in_array(strtolower($c), $e) ) {

        return $c;

    }

}, $arrB);

var_dump( array_filter(array_unique($arrC)) ); // 不区分大小写,单独的 array_intersect 无法实现不区分大小写

PHP中,关于把字符串拆分成数组的几个函数比较

?php

$str="1|2|3|4|5|";

$var=explode("|",$str);

print_r($var);

?

$var=explode("|",$str);

把$str按|进行分割

php还有其他的把字符串指定字符分割成数组

str_split(string,length)参数 描述

string 必需。规定要分割的字符串。

length 可选。规定每个数组元素的长度。默认是 1。

json_decode()这个函数也可以把字符串分割成数组 (第二个参数为true才行)

php数组与字符串比较问题

按你的要求是不是该先对数组内的元素做个比较,排序,被包含的元素最后做匹配。

如例子中,“四边形”被包含在“平行四边形”里面,匹配操作时,先匹配“平行四边形”,后匹配“四边形”。我们先对字符串先匹配“平行四边形”,并作标记,某位置开始,到某位置为止,记住,匹配另一关键字时来到这里,可以不做匹配操作了。-php字符串数组比较大小

想是这样想。

用yiicode的方法的话,你可以先排序,按上面的说法,把关键字排一下。

你设计些特殊的符号,分别对于关键字1,关键字2,关键字3,如:平行四边形对应"[1]",是对应"[2]",四边形对应“[3]”,设计的对应代码不要有包含关系,[1]与[11]是两个不一样东西,str_replace时不会出现问题。-php字符串数组比较大小

第一步,把目标字符串替换成:[1]是四边形

第二步,把第一步的字符串替换成:[1][2]四边形

第三步,那第二步处理后的的字符串替换关键字“四边形”,此时不会出现你所担心的问题咯,你提出的“注意”的第一条。第三步处理后的是:[1][2][3]

第四步,此时,因为我们自己设定的对应关系,所以我可以在将第三步[1]出现的地方全替换成"span平行四边形/span",

得:span平行四边形/span[2][3]

第五步,将第四步[2]出现的地方全替换成"span是/span",

得:span平行四边形/spanspan是/span[3]

第六步,将第五步的的字符串,[3]换成"span四边形/span",

得:span平行四边形/spanspan是/spanspan四边形/span

(完)

thinkphp数组比较大小

foreach($arr as $v){

    

        if($v  1) echo $v.'比1大';

    }

这样的意思吗