php - PHP preg_replace() 中的正则表达式产生空结果

标签 php regex preg-replace

我正在努力使用简单地转换此字符串所需的正则表达式语法:

posts/2012-03-16-23-07_an-awesome-post.md

进入这个字符串:

an-awesome-post

使用 preg_replace() PHP 函数。到目前为止,这是我得到的:

preg_replace('posts/[0-9-]*_([a-z-]*).md', '$1', 'posts/2012-03-16-23-07_an-awesome-post.md');

没有骰子。当我将结果分配给一个变量并 echo() 输出该变量时,我什么也得不到。我的正则表达式语法有点生疏,但谷歌搜索了一下让我觉得,至少,我在正确的轨道上。

最佳答案

正则表达式需要用定界符包围。

尝试将 '#posts/[0-9-]*_([a-z-]*).md#' 作为您的 $pattern(使用“#”作为分隔符)。

此外,您是否希望 . 匹配文字点?然后它必须用反斜杠转义,如 \..

关于php - PHP preg_replace() 中的正则表达式产生空结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9750122/

相关文章:

php - 带有基于 php 行的选项的 HTML 下拉列表

php - index.php YII 中的 ERR_TOO_MANY_REDIRECTS

php - 用逗号替换逗号后跟空格

php - 使链接在文本 block 中可点击的最佳方法

php preg_replace,正则表达式

php - fatal error : Call to undefined function mb_strtolower(): enable mbstring on linux EC2

php - 从 base 10 到 base 26 只用字母,这样 26 就是 aa

c# - 如何在 .net 中屏蔽信用卡号的前 6 位和后 4 位

时间:2019-03-17 标签:c#regex notough

ruby - 如何在 Ruby 正则表达式中使用 AND