考慮到不能明確標題的風險,因爲我無法用幾句話來更好地解釋它,我會準確描述我想要達到的目標。替換不屬於某個特定字符串的文字
假設我有一篇名爲「Ilha de Faro」的文章,並且在其描述中我想用相應的鏈接替換所有找到的相關文章名(來自db)。
到目前爲止沒有什麼特別的。但是,如果相關的文章是「Faro」,「Praia」等,並且文章描述包含名稱,我不希望它的文字被替換,所以「Ilha de Faro」不會轉向「Ilha德法魯「。
我正在考慮在關係替換髮生之前用一些特殊的字符串(如#$%&或其他)替換所有出現的名稱,然後將特殊字符串替換回文章名稱。但是,我想知道,如果有更直接更清潔的方式來做到這一點,或者我的小解決方法是一個很好的做法嗎?
預先感謝所有答案
編輯
我會得到更實際的看看這個。我還沒有嘗試過任何東西,因爲我不在這個階段,我只是在想未來。 所以,我有一張文章表,一篇文章可以有n篇相關文章。 具有下面的文章:
標題:青德法魯
說明:Chamam-LHE青德法魯MAS吶realidadeé烏瑪半島,ligadaà千佛菲爾米做拉多東帝汶,perto達埃萊的Quinta do Lago的。做lado oposto,par par leste,fica a barra,por onde passa anavegaçãocomercial e de recreio。 Embor a zona fronteira a Faro esteja ocupada por algumaconstrução,o areal pareceinterminávele propicia belos instantes de repouso efruiçãoda natureza。 De carro a partir da cidadesãodez minutos de viagem,nadirecçãodo aeroporto,havendo que contar com engarrafmentos e dificuldades de estacionamento noVerão。 Carreiras de barco a part do do cais de Faro(dondetambémpartem cruzeirosturísticosdiáriospelos canais,lagunas e ilhas da Ria Formosa)podem ser uma boa alternativa。
相關文章:法羅,利雅臺塑
我想是呈現與相關的文章,是存在於文本鏈接的文章的描述,所以它會是這樣的:
Chamam-lhe Ilha de Faro mas na realidadeéumapenínsula,ligadaàterra firme do lado leste,perto da elegante Quinta do Lago。做lado oposto,par par leste,fica a barra,por onde passa anavegaçãocomercial e de recreio。 Embor a zona fronteira a Faro esteja ocupada por algumaconstrução,o areal pareceinterminávele propicia belos instantes de repouso efruiçãoda natureza。 De carro a partir da cidadesãodez minutos de viagem,nadirecçãodo aeroporto,havendo que contar com engarrafmentos e dificuldades de estacionamento noVerão。 Carreiras de barco a partir do cais de
<a>
Faro</a>
(dondetambémpartem cruzeirosturísticosdiáriospelos canais,lagunas e ilhas da<a>
Ria Formosa</a>
)podem ser uma boa alternativa。
注意粗體標題...它包含「Faro」,這是相關文章之一的標題,但我不想擁有「Ilha de <a>
Faro </a>
」。
我最初的想法是爲模式創建一個相關文章標題的數組,並且爲替換標記的標題創建另一個標題標題,但即使當相關文章標題包含在父文章標題中時,它也會替換所有內容。
爲什麼不直接在數據庫中更新呢?當你不告訴我們你試過的東西時,很難給出僞代碼。 – 2014-10-01 23:13:13
給出一些示例輸入字符串和預期結果。 – Toto 2014-10-02 07:15:26