Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在长字符串php中隔离字符_Php_String - Fatal编程技术网

在长字符串php中隔离字符

在长字符串php中隔离字符,php,string,Php,String,我有一个字符串$str,我想搜索一个字符并将其与其他字符串隔离,然后将其/它们存储在一个$variable中,该字符是一个完整的冒号“:” 说我有绳子 一, 二, 三, e、 t.c 如果我使用substr\u count($str,“:”)我可以计算出现次数,但我想返回字符本身,这取决于它出现的次数,而不是数字使用substr\u count重复出现的次数 $needle = ':'; $str = 'water : air : land'; $variable = str_repeat($n

我有一个字符串$str,我想搜索一个字符并将其与其他字符串隔离,然后将其/它们存储在一个$variable中,该字符是一个完整的冒号“:”

说我有绳子

一,

二,

三,

e、 t.c


如果我使用
substr\u count($str,“:”)
我可以计算出现次数,但我想返回字符本身,这取决于它出现的次数,而不是数字

使用
substr\u count
重复出现的次数

$needle = ':';
$str = 'water : air : land';
$variable = str_repeat($needle, substr_count($str, $needle));
echo $variable; // ::

那么,使用
substr\u count
来重复它发生了多少次

$needle = ':';
$str = 'water : air : land';
$variable = str_repeat($needle, substr_count($str, $needle));
echo $variable; // ::

你走对了路;您可以结合使用:

或者,如果您必须多次使用此功能,您可以使用此功能:

function repeat_needle($needle, $haystack) {
    return str_repeat($needle, substr_count($haystack, $needle));
}

下面是一个例子,让我们来看看它的实际效果。

你走的路是对的;您可以结合使用:

或者,如果您必须多次使用此功能,您可以使用此功能:

function repeat_needle($needle, $haystack) {
    return str_repeat($needle, substr_count($haystack, $needle));
}

这里有一个简单的方法来观察它的实际应用。

另一个简单的方法。。。使用preg_replace,如下所示,这意味着将所有内容替换为空/空,冒号除外“:

前替换(“/[^:]/”,“,”$a)

$cat a.php
$php a.php
::::

另一种简单的方法。。。使用preg_replace,如下所示,这意味着将所有内容替换为空/空,冒号除外“:

前替换(“/[^:]/”,“,”$a)

$cat a.php
$php a.php
::::
另外,
preg\u replace('/[^://',''$str)
另外,
preg\u replace('/[^://',''$str)
str_repeat(':', substr_count($str, ':'));
function repeat_needle($needle, $haystack) {
    return str_repeat($needle, substr_count($haystack, $needle));
}
$cat a.php
<?php
  $a="water : air : land : Fire : Sky";
  $b=preg_replace("/[^:]/",'',$a);
  print $b."\n" ;
?>

$php a.php
::::