트위터가 제공하는 API에서 유저가 쓴 글은 당연히 불러올 수 있지만 그 글에 멘션 된 유저는 불러올 수 없다. 그렇다고 그냥 거기에 스레드를 생성한다고 자동으로 멘션이 붙는 것도 아니다. 그래서 결국은 멘션된 유저의 목록을 뽑아 올 필요가 있다.
트위터에서는 @만 붙인다고 다 멘션이 되는 게 아니다. 예를 들어 @[email protected] 가@is나 [email protected]
과 같은 트윗이 있다고 하자.
이 경우 a
, b
, is
는 멘션이 된 유저지만 not
의 경우 앞에 문자([a-zA-Z_]
)가 있기 때문에 멘션이 되지 않는다. 그래서 1시간 동안 씨름 한 결과 이걸 정확히 걸러내는 정규식을 만들었다.
(?:\[email protected])\w+
위와 같이 사용하면 정확히 멘션이 된 유저만 뽑아 올 수 있다. 다만 @a @b @a
같은 트윗일 경우 중복이 될 수 있으니 중복 제거는 알아서 해야 한다.