MySQL 上的 URL 正则表达式搜索和替换(在 WordPress 中)
Posted
技术标签:
【中文标题】MySQL 上的 URL 正则表达式搜索和替换(在 WordPress 中)【英文标题】:URL regex search and replace on MySQL (in WordPress) 【发布时间】:2011-02-04 17:11:23 【问题描述】:我有一个 WordPress 博客,其中包含许多我希望从中替换的 URL:
http://www.oldwebsite.co.il/name/***.asp
到这里:
http://www.newwebsite.com/?p=***
例如,由此而来:
http://oldwebsite.co.il/name/65971.asp
到这里:
http://www.newwebsite.com/?p=65971
我相信以下插件: http://urbangiraffe.com/plugins/search-regex/ 可以使用正则表达式来解决问题,但我正在寻找正确的正则表达式来使用。
我发现 this *** thread 有类似的任务,但由于我不太擅长正则表达式,所以我希望得到帮助,所以我不会搞砸任何事情。
谢谢,
塔尔
【问题讨论】:
【参考方案1】:搜索正则表达式:
http://oldwebsite\.co\.il/name/(\d+)\.asp
并替换为:
http://www.newwebsite.com/?p=$1
在 php 中:
$after = preg_replace('%http://oldwebsite\.co\.il/name/(\d+)\.asp%', 'http://www.newwebsite.com/?p=$1', $before);
【讨论】:
你必须转义'反斜杠和正斜杠'或将你的模式包裹在|pattern-goes-here|中使用 ||你不必转义字符。 我的 PHP 代码使用 % 符号来分隔正则表达式,因此我不必转义正斜杠。使用 |分隔正则表达式是一个坏主意,因为 |是一个正则表达式元字符。以上是关于MySQL 上的 URL 正则表达式搜索和替换(在 WordPress 中)的主要内容,如果未能解决你的问题,请参考以下文章