2009-05-01 7 views
0

Ich habe eine Zeichenfolge, die einen Pfad zu einer Datei haben kann. Beispiel src = "/ Ordner/was auch immer". Wie ersetze ich diesen Weg mit src = "http://www.sitename.com/folder/whateverSchienen ersetzen Pfad in Zeichenfolge

+0

Die Frage ist ein bisschen verwirrend für mich. Können Sie das vielleicht klären und Beispiele nennen? – nutcracker

Antwort

2

Wenn Ihr String src="/..." enthält, möglicherweise viele Male, dies tun:?

string.gsub!(/\bsrc="(\/[^"]*)"/, 'src="http://www.sitename.com\1"') 

Wenn Ihr Zeichenfolge enthält die URL nur, dies tun:

src.replace('http://www.sitename.com' + src) 

Mehr Informationen über String#gsub und String#gsub! hier: http://www.ruby-doc.org/core/classes/String.html#M000832

+0

Das würde funktionieren, wenn ich nur die vollständige URL an die Vorderseite der Zeichenfolge anhängen wollte, aber ich muss die src innerhalb einer Zeichenfolge finden und dann ändern src –

+0

Eine weitere Antwort hinzugefügt, die alle Instanzen von src = findet – pts

0

Ich mag pts-Lösung, aber ich könnte den Schrägstrich von der Regex entfernen ... so wäre es:

string.gsub!(/\bsrc="([^"]*)"/, 'src="replacement_text\1"') 

verwenden die \ 1 die Rückseite Bezug auf Zugang