【问题标题】:Getting forward slash before the URL Using the preg_replace在 URL 之前使用正斜杠使用 preg_replace
【发布时间】:2013-06-03 09:38:25
【问题描述】:

使用 preg_replace 在 URL 前获取正斜杠

$contentss = file_get_contents("http://www.ncbi.nlm.nih.gov/pubmed?LinkName=pubmed_pubmed&from_uid=18032633" ); 
preg_match('/<div class="rprt">(.*)<\/div>/',$contentss,$matches);

$patterns = '/pubmed/';

$replacements = 'http://ncbi.nlm.nih.gov/pubmed';

$string = '<a href="pubmed/"></a>';

$getreplacements = ( preg_replace($patterns, $replacements, $matches));

echo $getreplacements[0];

输出在锚标记 href 中显示为 /http://ncbi.nlm.nih.gov/pubmed。我想在http://ncbi.nlm.nih.gov/pubmed 之前删除那个正斜杠。

请帮助解决这个问题。提前致谢。

【问题讨论】:

  • 使用ltrim($getreplacements[0], '/');

标签: php preg-replace


【解决方案1】:

$patterns = '/pubmed/'; 替换为$patterns = '/\/pubmed/';

【讨论】:

  • 是的,我做到了..但是抛出函数错误...您可以检查您身边的代码..请
  • 嘿,我明白了......我想你现在修改了答案......它工作正常......非常感谢 Rohit..
【解决方案2】:

只需将您的正则表达式更改为

$patterns = '/\/pubmed/';

这样,它会将/pubmed 更改为您的网址http://ncbi.nlm.nih.gov/pubmed

/ 需要在 regex 中转义。

我已经测试过了,它正在工作。

【讨论】:

  • 下面的 Rohit 说的是一样的东西..这是有效的.. 感谢您的回复
  • 你写的它不起作用,所以我检查了它,它对我有用。 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-04-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多