1

如何使用 php 执行以下操作?

这是我的例子: http://www.example.com/index.php?&xx=okok&yy=no&bb=525252

我想删除这部分:&yy=no&bb=525252

我只想要这个结果: http://www.example.com/index.php?&xx=okok

我试过这个:

$str = 'bla_string_bla_bla_bla';
echo preg_replace('/bla_/', '', $str, 1); ;

但这不是我想要的。

4

3 回答 3

2

选择 preg_replace 是一个好的开始。但是您需要了解正则表达式

这将起作用:

$str = 'http://www.example.com/index.php?&xx=okok&yy=no&bb=525252';
echo preg_replace ('/&yy.+$/', '', $str);

这里的正则表达式是&yy.+$

让我们看看这是如何工作的:

  • &yy&yy明显匹配
  • .+匹配一切...
  • $...直到字符串的结尾。

所以在这里,我的替换说:将任何开始的内容替换&yy为字符串的结尾,这实际上只是删除了这部分

于 2013-06-28T20:13:42.430 回答
2

你可以这样做:

$a = 'http://www.example.com/index.php?&xx=okok&yy=no&bb=525252';

$b = substr($a,0,strpos($a,'&yy')); // Set in '&yy' the string to identify the beginning of the string to remove

echo $b; // Will print http://www.example.com/index.php?&xx=okok
于 2013-06-28T20:14:58.857 回答
0

您是否总是期望结尾部分具有“yy”变量名?你可以试试这个:

$str = 'http://www.example.com/index.php?&xx=okok&yy=no&bb=525252';
$ex = explode('&yy=', $str, 2);
$firstPart = $ex[0];
于 2013-06-28T20:13:23.473 回答