リンクを交換する必要がありますindex.php?a=2
が、それ&
以降にあるa=2
場合は交換しないでください。
index.php?a=2 <- replace
index.php?a=2&b=3 <- don't replace
を使用してPHP
、preg_replace()
私はこれを使ってみました:
preg_replace('^index\.php\?a=([0-9]+)(?!amp;)^', 'home', 'index.php?a=2');
preg_replace('^index\.php\?a=([0-9]+)(?!amp;)^', 'home', 'index.php?a=2&b=3');
preg_replace('^index\.php\?a=([0-9]+)(?!&)^', 'home', 'index.php?a=2');
preg_replace('^index\.php\?a=([0-9]+)(?!&)^', 'home', 'index.php?a=2&b=3');
私が使用しているもの:
preg_replace('^(\/*)index\.php\?a=([0-9]+)(?!&)^e', "a($2)", 'index.php?a=2');
function a($id) {
// Getting name from mysql...
return '/a$id_$name';
}
これで動作しています:index.php?a=2&b0
、しかしそうでindex.php?a=10&b=0
はありません。