PDA

View Full Version : حرفه ای: جایگزینی متن با استفاده از reqular expression در mysql



alimooghashang
پنج شنبه 09 شهریور 1391, 10:01 صبح
سلام
من یه فیلد متن دارم میخوام داخلش با یه req ex بگردم و یه سری از متن ها رو با یه متنی جایگزین کنم
این کار رو میشه داخل mysql کرد؟
ممنون

بهزاد علی محمدزاده
پنج شنبه 09 شهریور 1391, 12:17 عصر
سلام . بله با تابع REPLACE .

UPDATE MyDB.MyTable
SET MyDB.MyTable
= REPLACE(MyDB.MyTable.MyField,'OldString','NewStrin g')
WHERE MyDB.MyTable.MyField like '%OldString%';


منبع (http://blog.miloco.com/2009/01/how-to-replace-a-partial-string-in-mysql.html)

alimooghashang
پنج شنبه 09 شهریور 1391, 12:56 عصر
با reg ex میخوام این کار رو بکنم
مثلا


kljlkdjfsdfaliMYTEXTalilkjasldkjlsdf

میخوام داخل متن جستجو کنه و هرجا که
aliMYTEXTali رو داشت بجاش اینا بذاره

newaliMYTEXTnewali

بهزاد علی محمدزاده
پنج شنبه 09 شهریور 1391, 13:56 عصر
مثل اینکه خود MySQL برای اینکار تابعی نداره . شاید کاربرانی از قبل همچین تابعی نوشته باشند که بتونید با جستجو بدست بیارید ، اما خود MySQL و من چیزی در این مورد پیدا نکردم .