게시판 본문에 중복된 단어가 있을경우 하나만 출력할 수 있을까요?

게시판 본문에 중복된 단어가 있을경우 하나만 출력할 수 있을까요?

QA

게시판 본문에 중복된 단어가 있을경우 하나만 출력할 수 있을까요?

본문

게시판에 누군가 글을 작성 합니다.

 

글내용 :

 

1234567890

1234567890

1234567890

1234567

 

1234

123

123456

 

-------------

 

위 글에서 1234567890 이 동일하게

세번 들어갔는데 동일한 글자일 경우

1234567890 이 본문에 한번만 출력되게 할 수 있을까요?

 

 

이 질문에 댓글 쓰기 :

답변 4

질문이 참 불분명해서 아무 글자나 중복되는 걸 다 지운다면....

 

사랑합니다. 고맙습니다. 아침입니다. 의 "다"를 모두 지울텐데요?

삭제되는 중복문자열의 "패턴"을 제시해 주셔야 코드에 대한 가닥이 나옵니다.

더 디테일하게 코드를 짠다면 영어인 경우 동일 문자열인 a를 다 지워버리는 형태도 나올 수 있거든요. 

https://www.youtube.com/watch?v=nMQw29nfzpg
https://www.youtube.com/watch?v=nMQw29nfzpg
https://www.youtube.com/watch?v=nMQw29nfzpg
https://www.youtube.com/watch?v=nMQw29nfzpg


죄송합니다. 유투브나 URL이 작성됩니다.
본문에 동일한 URL이 여러개 작성되면
중복되는 URL을 날리고 하나의 URL만 출력하고 싶습니다.


$str = "1234567890
1234567890
1234567890
1234567
 
1234
123
123456";
 
$r = implode(PHP_EOL, array_unique(explode(PHP_EOL, $str)));
 
echo $r;


$str = "
https://www.youtube.com/watch?v=nMQw29nfzpg
https://www.youtube.com/watch?v=nMQw29nfzpg
https://www.youtube.com/watch?v=nMQw29nfzpg
https://www.youtube.com/watch?v=nMQw29nfzpg
";
 
$r = implode(PHP_EOL, array_unique(explode(PHP_EOL, $str)));
 
echo $r;

본문 내용이 구체적이지 않아서 확실한 코드를 얄려드릴 수는 없겠으나 정규식 사용이 가능 한다면

다음과 같은 절차로 가능 합니다

 

1. 정규식으로 url을 모두 추출

2. 동일한 url 갯수 카운트

3. array_unique로 1번의 배열 정리

4. 3번 배열을 loop 하면서 본문에서 첫번째 것만 남기고 나머지는 공백처리

   이 부분이 1에서 구한 url형태에 따른 여러가지 상황을 고려해야할 것 같아보입니다

   예를들어

   http://abc.com/bbs/board.php?bo_table=free&page=1

   http://abc.com/bbs/board.php?bo_table=free&page=10

   이런 형태가 나온다면 치환에 곤란한 문제가 생깁니다

   str_replace 나 preg_replace로 간단히 처리될 문제는 아닙니다

 

또 문제가 있습니다.

 

가령

<a href="url">url</a> 이럴 경우 링크안의 innerText 가 사라지면서 링크가 무력화되겠죠.

 

정확히 유튜브주소면 유튜브주소, mp3 경로면 mp3 경로같이 타겟을 명확히 지정해 주셔야지

막연히 url 이라고 한다면 어떻게 코드를 짜더라도 문제가 생길 수 밖에 없어요.

답변을 작성하시기 전에 로그인 해주세요.
전체 0 | RSS
QA 내용 검색
  • 개별 목록 구성 제목 답변작성자조회작성일
  • 질문이 없습니다.

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT