강의

멘토링

커뮤니티

Inflearn Community Q&A

sowlweb1689's profile image
sowlweb1689

asked

[Renewal] Creating NodeBird SNS with React

정규식 URL 추출 질문

Written on

·

628

0

정규표현식 사용에 있어서 질문 드립니다.

현재 url을 작성하면 링크로 변환되어서 그 사이트로 이동할 수 있게 하고 싶은데 링크로 변환이 되지 않습니다...

url을 링크로 변환하는 코드는 이거고

이렇게 PostCardContent의 해시태그로 변환하는 코드 밑에 배치했습니다.

이렇게 해시태그는 변환이 되지만 url은 변환이 되지않습니다...

어느부분을 고쳐야 할까요... 정규식이 잘못된 걸까요...

reduxreactnodejsexpressNext.js

Answer 1

0

zerocho님의 프로필 이미지
zerocho
Instructor

url 변환 코드만 있으면 url로 변환되나요? url이 제대로 변환되는지부터 체크해보세요.

sowlweb1689님의 프로필 이미지
sowlweb1689
Questioner

네 이렇게 url 변환코드만 있으면 변환이 됩니다...

zerocho님의 프로필 이미지
zerocho
Instructor

그러면 그 둘을 연달아 쓰는 과정에서 문제가 생긴 것 같은데요. 어떻게 연달아 쓰신 건가요? 둘을 따로 따로 변환하기보다는 한 번에 변환하는 게 좋습니다.

sowlweb1689님의 프로필 이미지
sowlweb1689
Questioner

해시태그 먼저 변환하고 나머지 것들을 url로 split 해서 match 되는 것들을 링크로 변환할 수 있게 코드를 짰는데 이것도 안 되네요... 어디부분이 잘못된 걸까요...ㅠ

zerocho님의 프로필 이미지
zerocho
Instructor

return v.split 해야하는 것 아닌가요

sowlweb1689님의 프로필 이미지
sowlweb1689
Questioner

return v.split하니까 링크변환 됐습니다!!

그런데 문제가 console.log를 찍어보니 제가 구글에서 찾아 사용한 정규식이 'https://'와 's', 'c'도 반환을 하더라구요...

그래서 링크변환은 성공적이지만... 이렇게 https://sc가 출력이 됩니다... 

제가 사용한 정규식이 /((http(s)?:\/\/)([a-z0-9\w]+\.*)+[a-z0-9]{2,4})/gi 이건데

어떻게 수정을 해야 정규식으로 split 했을 때 'http://'와 's', 'c'가 반환이 안 되게 할 수 있을까요...ㅠㅠㅠㅠㅠㅠㅠㅠ 제가 정규식을 하나도 모릅니다 ㅠㅠㅠㅠㅠ

zerocho님의 프로필 이미지
zerocho
Instructor

괄호들을 좀 빼면 될 것 같기도 하네요. https?:\/\/ 이런 식으로요.

sowlweb1689's profile image
sowlweb1689

asked

Ask a question