删除php中第四个斜杠后的部分字符串
我有一个数组,其中包含链接,并试图编辑这些链接。尝试在第四个斜杠后剪切链接删除php中第四个斜杠后的部分字符串,php,Php,我有一个数组,其中包含链接,并试图编辑这些链接。尝试在第四个斜杠后剪切链接 [0]=> string(97) "https://www.nowhere.com./downtoalley/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=shimokita4040/outline" [1]=> string(105) "https://www.example.com./wowar-waseda/?iad2=sumai-p
[0]=>
string(97) "https://www.nowhere.com./downtoalley/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=shimokita4040/outline"
[1]=>
string(105) "https://www.example.com./wowar-waseda/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=shinjuku-w25861/outline"
[2]=>
string(91) "https://www.hey.com./gotoashbourn/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=kinuta7429/outline"
预期输出如下所示:
[0]=>
string(97) "https://www.nowhere.com./downtoalley/"
[1]=>
string(105) "https://www.example.com./wowar-waseda/"
[2]=>
string(91) "https://www.hey.com./gotoashbourn/"
长度不同,所以我不能使用
strtok
任何其他选项 没有直接的功能来实现这一点。您可以按照下面的PHP代码进行操作:
$explodingLimit = 4;
$string = "https://www.nowhere.com./downtoalley/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=shimokita4040/outline";
$stringArray = explode ("/", $string);
$neededElements = array_slice($stringArray, 0, $explodingLimit);
echo implode("/", $neededElements);
我为一个元素做了这个,你可以用它来创建数组。如果需要,还可以添加last“/”
。希望它对您有所帮助。您可以使用此正则表达式将第四个/
之后每个字符串中的所有内容替换为零
^(([^/]*/){4}).*$
它查找4组非/
字符,后跟一个/
,在捕获组1中收集该文本;然后替换为$1
,只给出第四个/
之前的文本:
$strings = array("https://www.nowhere.com./downtoalley/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=shimokita4040/outline",
"https://www.example.com./wowar-waseda/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=shinjuku-w25861/outline",
"https://www.hey.com./gotoashbourn/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=kinuta7429/outline");
print_r(array_map(function ($v) { return preg_replace('#^(([^/]*/){4}).*$#', '$1', $v); }, $strings));
输出:
Array (
[0] => https://www.nowhere.com./downtoalley/
[1] => https://www.example.com./wowar-waseda/
[2] => https://www.hey.com./gotoashbourn/
)
尝试以下代码:
<?php
$arr = array(
0 => "https://www.nowhere.com./downtoalley/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=shimokita4040/outline",
1 => "https://www.example.com./wowar-waseda/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=shinjuku-w25861/outline",
2 => "https://www.hey.com./gotoashbourn/?iad2=sumai-pickup&argument=CH4fRVnN&dmai=kinuta7429/outline");
$resultArray = array();
foreach($arr as $str) {
array_push($resultArray, current(explode("?",$str)));
}
print_r($resultArray);
?>
您可以测试此代码您是否尝试过使用
内爆
和爆炸
?考虑得到数组的一个值,并将其设置为变量,如“代码> $部分=爆炸('/')”https://www.nowhere.com./downtoalley/?iad2=sumai-拾取和参数=CH4fRVnN和dmai=shimokita4040/outline')代码>和输出将在$output=infrade('/',array_slice($parts,0,3))代码>