2017-08-29 139 views
0

刪除地址我有持有與此類似

CNEWS # Trinidad : "By Any Means Necessary" Watson Duke Swims And Sails To Toco http://somewebsitehere.com

我能做些什麼,以從列刪除整個HTTP地址文本我的數據庫中的列?請注意,一些鏈接可能會被打破,所以它可能有http:// somewebsitehere.com

我正在考慮使用子字符串索引,但不知道這將工作。

回答

0

您可以使用您最喜歡的編程語言遍歷表中的行,將該列取出,對其應用正則表達式替換規則,然後使用新值更新表中的行。

下面是一些僞代碼:

theRows = SELECT * FROM TheTable WHERE 1; 
foreach row in theRows 
BEGIN 
    oldColumnValue = row[theColumnName] 
    // Removes any link appearing at the end of the column 
    newColumnValue = oldColumnValue.replace(/http:\/\/[^\s]*$/, '') 
    UPDATE TheTable SET theColumnName = newColumnValue WHERE id = row[id] 
END 

對於小和一些具體的事情,因爲這,你可以用perl與DBI庫連接到MySQL。如果您想進一步瞭解如何使用正則表達式,請參閱以下內容:http://www.regular-expressions.info/perl.html