php中的substr.如何从路径中提取特定单词


substr in php. How to extract specific word from the path?

如何从给定路径中提取名为mygm的单词:

C:'Program Files'abc'bcd'cfng'mygm'aaa'afc'Acharya.txt

这里直到'cfng路径是恒定的并且剩余的可以改变。

$str='C:'Program Files'abc'bcd'cfng'mygm'aaa'afc'Acharya.txt';
$folders=explode('''',$str);
$folder=$folders[5];
echo $folder;
$url = 'C:'Program Files'abc'bcd'cfng'mygm'aaa'afc'Acharya.txt';
$searchFor = ''mygm';
echo substr($url, strpos($url, $searchFor));

试试这个:

$str = 'C:'Program Files'abc'bcd'cfng'mygm'aaa'afc'Acharya.txt';
$fixedStr = 'C:'Program Files'abc'bcd'cfng';
$str =  trim(str_replace($fixedStr, '', $str),'''');
$values = explode('''',$str);
echo $values[0];

正如问题中所说,直到cfng路径是恒定的。

因此,您可以在'上进行分解并打印下一个数组元素。

分解可以在特定的分隔符上将字符串拆分为数组。

 $string = "C:'Program Files'abc'bcd'cfng'mygm'aaa'afc'Acharya.txt";
 $array = explode("''", $string);
 echo $array[5];

您可以打印整个数组内容,如:print_r($array)

最简单的方法是:

    $url = "C:'Program Files'abc'bcd'cfng'mygm'aaa'afc'Acharya.txt";
    $path = explode("''", $string);
    echo $path[5];
$subject = 'C:'Program Files'abc'bcd'cfng'mygm'aaa'afc'Acharya.txt';
$pattern = '/cfng'''(.*?)'''/';
if(preg_match($pattern, $subject, $matches))
    echo $matches[1];
$url = "C:'Program Files'abc'bcd'cfng'mygm'aaa'afc'Acharya.txt";
$sub_str = substr($url,0,29);
echo $sub_str;
o/p : C:'Program Files'abc'bcd'cfng

如果你只需要"mygm",你必须做下面的代码

$sub_str = substr($url,-24,4);
echo $sub_str;
$str = "C:'Program Files'abc'bcd'cfng'mygm'aaa'afc'Acharya.txt";
$var = substr($str,0,29);
echo $var;
o/p : C:'Program Files'abc'bcd'cfng

如果你只需要"mygm",你可以这样得到:

$var = substr($str,-24,4);
echo $var;