2012-12-11 3 views
1

트윗이 있으며, 해시 태그가 말하는 것을 찾아야합니다. '#'으로 시작하고 ''로 끝나는 모든 것을 변수로 분리하고 저장할 수 있습니까? MatLab을 사용하고 있습니다.regexp를 사용하여 단어를 찾으십시오.

+1

내가 regexp 명령에 대한 도움말 파일을 읽고 matchstart 및 matchend 명령을 찾았지만 구현 방법이나 올바른 사용법이 아닌지 잘 모르겠습니다. – user1896055

+1

@all : 가끔 어디서부터 시작해야할지 모르는 사용자가 있습니다. 다른 사람들과 달리,이 질문은 실제로 매우 명확합니다. 해시 태그를 찾기 위해 regexp를 사용하는 방법과 사용자가 (의견에서) RTFM을했다고 알려줍니다. 결과적으로 나는 그 질문을 다시 열어 투표한다. – Jonas

답변

5

익숙하지 않은 정규 표현식은 사용하기가 어려울 수 있습니다.

tweet = 'it is fun to post on #stackoverflow, really'; 
regexp(tweet,'#(\w+)','tokens','once') 
ans = 
    'stackoverflow' 

#(\w+)는 무엇입니까 :

여기에 해시 태그를 찾을 수있는 하나 개의 방법이있다? \w을 사용하여 "단어"문자 (공백이나 문장 부호 없음)를 찾고 적어도 하나 이상을 원한다고 지정하십시오 +. 단어는 #으로 시작해야합니다. 괄호를 사용하여 반환 할 부분을 지정하고 tokens 옵션을 사용하여 일치 항목을 반환합니다 (해시 태그가 짹짹에있는 곳은 상관하지 않음). 옵션을 설정하여 regexp은 하나의 해시 태그만을 찾습니다. 트윗에 여러개의 해시 태그가있을 것으로 예상된다면 출력하지 않는 것이 좋습니다. 출력은 문자열의 셀 배열이 될 것입니다.

+0

정말 고마워요 !! – user1896055

관련 문제