2010-03-20 2 views
1

의 블록으로 교체 :찾기 및 I는 다음과 같이 텍스트 필드의 전체 데이터베이스가 텍스트

(paragraph of normal text) 

image:blog/clownboy.jpg 

(another paragraph) 

나는이 큰 블록 중 하나를 수행합니다 레일에 대한보기 도우미를 작성하는 중이 야를 텍스트의 경우 "image : blog/clownboy.jpg"와 같은 비트를 찾아 해당 공백 문자를 방해하지 않고 해당 <img src="blog/clownboy.jpg">으로 바꿉니다. 나는 지금 1 시간 정도 노력해 왔지만 루비가 처음인데 정규 표현식은 여전히 ​​저를 넘어서 있습니다.

<img src='xyz'/>와 별도의 행에 image: xyz
+3

나는 clownboy.jpg라는 것이 있다는 사실을 두려워합니다. –

답변

3

글로벌 대체 :

사용하고있는 데이터베이스
text.gsub!(/^image:(.+)$/) { "<img src='#{$1}'/>" } 
+0

이것은 정말로 가깝지만 주변의 공백을 제대로 처리하지 못하는 것 같습니다. 내 텍스트 필드에 "\ r \ n \ r \ n 이미지 : foobar.jpg \ r \ n \ r \ n"이 포함 된 경우 "\ r \ n \ r \ n \ n \ r \ n" 이것은 적절한 링크가 아닙니다. 나는 정규식을 가지고 놀고 있는데, "(. +) $"대신에 무엇을 사용해야할지 모르겠다. –

+0

정규식을 다음과 같이 바꾼다 :/^ image : (\ S +)/ – amitkaz

+0

그랬다! 감사! –

관련 문제