테스트 사이트 - 개발 중인 베타 버전입니다

정규표현식 채택완료

학교종이땡땡땡 10년 전 조회 3,777

정규표현식을 잘 몰라 이게 맞는지는 모르겠지만 현재

([\s\S]*?)

모든 문자 입력을 이렇게 사용중입니다.

 

그런데 저 정규표현식에서 따옴표(')만 제외할 수 있을까요?

 

예를 들면

</p><p>$html = preg_replace("/\[그림\]([\s\S]*?)\[\/그림\]/i", "그림-$1", $html); </p><p>

현재는 "[그림]이미지[/그림]" 이렇게 입력하면 "그림-이미지" 이렇게 출력이 되는데...

"[그림]'이'미'지1'[/그림]" 이렇게 따옴표를 넣어서 입력해도 "그림-'이'미'지1'"이 아닌 "그림-이미지1"로 출력하고 싶습니다.

정규식이 틀린 부분이 있다면 수정도 부탁드리고, 문자열 중에 따옴표만 제외할 수 있는지 조언 부탁드립니다. 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

P
10년 전
"/\[그림\]([\s\S^']*?)\[\/그림\]/i"
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

학교종이땡땡땡
10년 전
위 방법은 안되네요;
감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

10년 전
$html = str_replace("'","",$html); 처럼 preg_replace 하기 전에 작은따옴표만 걸러 버리는 방법도 있겠습니다.
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

학교종이땡땡땡
10년 전
작은 따옴표가 필요할 때가 있어서 정규식 안에서만 제외하고 싶었습니다.
감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인