2011-01-10 5 views
0

나는 포함 문자열이 : 내 "텍스트 뷰"에 표시되는 텍스트 내에서 (보기 문자열) (이 형식) 나는 "문자열" 부분 linkify 위임보다 방법이 할 수있는 또 다른 활동 싶어 나는 이것을 달성한다, 정규식에 관한 나의 knowladge는 그렇게 좋지 않다?안드로이드 안의 Textview 정규 표현식?

답변

0

여기는 내가 사용하고있는 마지막 버전입니다. 이번에는 모양을 포함하여 모두 일치하는 모양으로 문자열을 일치시킬 필요는 없지만 모양은 대괄호로 끝나는 하나 이상의 문자열로 이어질 수 있습니다.

\(look: .+ \) 

이 (보기 : 문자열) 잡을 것 (보기 : 문자열 문자열)과 더 이상 문자열을

1

정규식은 "(look: string)" 문자열이

\(look: (\S+)\) 

설명의 라인을 따라 될 식별 할 수

\(   # opening parenthesis 
look:  # the string "look: " 
(   # begin match group 1 
    \S+  # anything but a space (insert bells-n-whistles URL regex here) 
)   # end match group 1 
\)   # a closing parenthesis 

\S+ (그들은 공백을 포함 할 수 없기 때문에) 경우 URL을 처리 충분히 가까운 일반적으로이 위치에 URL이 있어야합니다. 다른 것들도 거기에 나타날 수 있다면, 당신은 더 진보 된 수표를 여기에 삽입 할 수 있습니다. URL 일치 정규식은 검색하면 충분합니다.

모든 경기의 경우 링크를 만드는 데 사용할 수있는 1 그룹의 내용에 관심이 있습니다.

+0

왜 당신은 lookbehind 필요합니까 다음에? 그리고'look :'다음에'\ s *'를 추가해야합니다. –

+0

@ 팀 : 흠. 보이지 않는 것은 필요하지 않습니다. 나는 그것을 제거 할 것이다. '\ s *'는 올바르지 않을 수도 있습니다. – Tomalak

+0

아, 나는 단지 공백을 포함하고있는 간결한 형식이 아니라 자세한 정규 표현식 (이 위치에서 적어도 어떤 공백 형식이 필요할 것임)을 보았습니다. –