2012-06-25 2 views
1

정규식 일치를 위해 gsub를 작성하려고 시도하고 있지만이 작업을 수행하는 데 더 완벽한 방법이 있다고 생각합니다.정규식 일치를위한 gsub를 작성하는 완벽한 방법?

내 식 :

ref.gsub(ref.match(/settings(.*)/)[1], '') 

나는이 settings/animals을, 그냥 settings를 반환 할 수 있도록.

하지만 settings이 null이면 어떻게 될까요? 내 [1]이 예상대로 실패합니다.

그렇다면 가끔 settings이 일치하지 않는다고 가정하고 위의 내용을 어떻게 작성할 수 있습니까?

그래서 기본적으로 단어 뒤에 settings이라는 단어가 있으면 그 단어를 제거합니다. 하지만 그렇지 않다면 걱정할 필요가 없습니다.

감사합니다.

+0

이것은 또한 http://stackoverflow.com/questions/11190422/the-perfect-way-to-gsub-a-regex-match –

+0

레프의 듀프이고, 다른 하나는 의한시켰다 오류가 Stackoverflow.com. 그것은 게시하지 않았고, 나는 500 개의 오류를 신중하게 게시했다고 생각합니다. 나는 다른 하나를 삭제했다. – Trip

+0

죄송합니다, 나는 질문의 세 복사본 :)에서 길을 잃었습니다. –

답변

5

왜 가장 간단하게 작동하지 않을 수 있습니까?

ref.gsub(/(settings)(.*)/, '\1') 
관련 문제