php - 我的正则表达式有什么问题?

标签 php regex

为什么这段代码显示 my/url/ 而不是 my/url

<?php

    $url = "/my/url/";
    echo preg_replace("#^/?(.+)/?$#","$1",$url);

?>

最佳答案

你的 (.+) 默认是贪心的。通过在 + 之后添加 ? 使其不贪婪。

echo preg_replace("#^/?(.+?)/?$#","$1",$url);

CodePad .

您也可以使用 trim($url, '/'),它比正则表达式更合适。

关于php - 我的正则表达式有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7751492/

相关文章:

php - 使用 Zend/PDO 构建查询时如何使用 MySQL 函数

php - Slim Framework 中的依赖注入(inject)——将 Container 传递到你自己的类中

php - PHP-MySQL 中处理的日期时间/时间戳

regex - 匹配以指定单词结尾的 url 中的域

regex - Sed 和正则表达式

php - 将用户制作的 SVG (raphael.js) 发送到服务器 (php),以便通过电子邮件发送

PHP插入大量值问题

regex - 如何使用Excel VBA脚本删除某些字符

python - 在不同情况下如何使用正则表达式修改 pandas 中的字符串

JavaScript - 从字符串中删除除十六进制之外的所有内容