2016-12-14 5 views
-2

私はこのMYSQLデータベースの画像を持っているので、パターンに続くすべての出来事を検索して置き換えたい(アスタリスク*拡張子は残る必要があります*文字の後ろの文字数は変わりますが、拡張子も同じです) あらかじめお手数をおかけしていただきありがとうございます!PHP、アスタリスクの後の文字を削除する方法とファイルの拡張子で停止する

は、これは私が持っているものです:

mo051316hires-5 * 100xx2304-2304-576-0.jpg

brandicourt-フォト高解像度-1 * 100xx3264-3264-816-0

.gifメモこれは、私が欲しいものです:

mo051316hires-5.jpg

brandicourt-フォト高解像度-1.gifこのような

答えて

1

使用preg_replace()

$newFileName = preg_replace('/\*[^.]+/', '', $oldFileName); 

これはリテラル*\*)を探し、1つ以上の非周期文字([^.]+)と置き換えますそれらは空文字列です。

3v4l.org demo

+0

に入れてはそんなにありがとう

SELECT CONCAT( SUBSTRING_INDEX(col, '*', 1), '.', SUBSTRING_INDEX(col, '.', -1) FROM ... 

を! – user1564379

+0

これをmysqlクエリ(検索と置換)に含める方法はありますか? – user1564379

+0

@ user1564379これを[tag:php]とタグ付けし、あなたのタイトルに "PHP、how to"と書いたので、PHPコードではなくMySQLクエリでこれを行おうとしていたことはわかりませんでした。私はそれをどうやって説明するのがうれしいですが、それは非常に異なる種類の解決策です。あなたはそれを新しい質問として尋ね、コメントにここにリンクを投稿することを検討するかもしれません。 –

1

MySQLを使用して、既存のデータを修正するには:

このお試しください:それは良いようであれば、

UPDATE ... 
    SET col = CONCAT ... 
関連する問題