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

정규식 문의 드립니다. 채택완료

카카오툴즈 8년 전 조회 2,597

안녕하세요.

 

#000000

 

#FFFFFF

 

으로 변경하는 php 정규식은 어떻게 되는지 도움을 받고 싶습니다.

 

 

 

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

답변 2개

채택된 답변
+20 포인트
8년 전

다음과 같은 것을 원하시는지는 모르겠지만

참조하시죠.

$str = '#000000'; $pattern = "#(?P[^<]+)<\/item>#i";

preg_match($pattern, $str, $matches);

if($matches['color'] == '#000000' || $matches['color'] == '#000'){     $s = array("#000000", "#000");     $r = array("#FFFFFF", "#FFF");     $str = str_replace($s, $r, $str);     echo $str; }

로그인 후 평가할 수 있습니다

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

8년 전

정규식으로는

</p>

<p>$content = '<item name="color">#000000</item>123<item name="color">#000000</item>';</p>

<p>$content = preg_replace('!<item name="color">#000000</item>!', '<item name="color">#FFFFFF</item>', $content);</p>

<p>

 

이지만 별다른 규칙이 필요없다면 굳이 성능이 떨어지는 정규식을 사용할 필요는 없습니다.

</p>

<p>$content = '<item name="color">#000000</item>123<item name="color">#000000</item>';

$content = str_replace('<item name="color">#000000</item>', '<item name="color">#FFFFFF</item>', $content);</p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

카카오툴즈
8년 전
컬러 색상값을 읽고,
컬러 값에 상응하는 새로운 값을 도출하여
변경하려고 합니다.

하여, 원본값 color 읽고, 그 이후 해당 값을 치환하고 싶습니다.
하여 str_replace 가 아닌 정규식이 필요로 합니다.

빠른 답변 감사드립니다.

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

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

로그인