Twitter에서 멘션된 유저만 뽑아오기

트위터가 제공하는 API에서 유저가 쓴 글은 당연히 불러올 수 있지만 그 글에 멘션 된 유저는 불러올 수 없다. 그렇다고 그냥 거기에 스레드를 생성한다고 자동으로 멘션이 붙는 것도 아니다. 그래서 결국은 멘션된 유저의 목록을 뽑아 올 필요가 있다.

트위터에서는 @만 붙인다고 다 멘션이 되는 게 아니다. 예를 들어 @a-@b 가@is나 a@not과 같은 트윗이 있다고 하자.
이 경우 a, b, is는 멘션이 된 유저지만 not의 경우 앞에 문자([a-zA-Z_])가 있기 때문에 멘션이 되지 않는다. 그래서 1시간 동안 씨름 한 결과 이걸 정확히 걸러내는 정규식을 만들었다.

(?:\B@)\w+

위와 같이 사용하면 정확히 멘션이 된 유저만 뽑아 올 수 있다. 다만 @a @b @a 같은 트윗일 경우 중복이 될 수 있으니 중복 제거는 알아서 해야 한다.

[userscript] remove ‘ㅋ’ in facebok and twitter

For facebook:

For twitter