다음과 같은 문제가 있습니다. 글자 사이에 오직 슬래시로만 나타나는 모든 세미콜론을 교체해야합니다. 문제는 또한 html 엔티티에 세미콜론이 있고 str_replace가 그들을 엉망으로 만든다는 것입니다. ,PHP에서 글자 사이에 세미콜론을 바꾸십시오.
$a = str_replace(";Cat", "/Cat", $a);
다음과 같은 문제가 있습니다. 글자 사이에 오직 슬래시로만 나타나는 모든 세미콜론을 교체해야합니다. 문제는 또한 html 엔티티에 세미콜론이 있고 str_replace가 그들을 엉망으로 만든다는 것입니다. ,PHP에서 글자 사이에 세미콜론을 바꾸십시오.
$a = str_replace(";Cat", "/Cat", $a);
는 편지 사이에 세미콜론을 대체 할 수 : -
샘플 문자열 :
Category A > Subcategory A;Category A > Subcategory B;Category B > Subcategory C
원하는 출력과 같은 [http://php.net/manual/en/function.str-replace.php], 뭔가
Category A > Subcategory A/Category A > Subcategory B/Category B > Subcategory C
매력처럼 작동하며, 나는 당신의 빚을 영원히 남습니다. – alexius
당신은 않는 str_replace를 시도 할 수 regex lookahead와 lookbehind를 사용할 수 있습니다.
$str = "Category A > Subcategory A;Category A > Subcategory B;Category B > Subcategory C";
$str = preg_replace("/(?<!\s);(?!\s)/", "/", $str);
echo $str;
또는 HTML 엔티티 경우
는>
당신은 대체 수행하기 전에
$str = "Category A > Subcategory A;Category A > Subcategory B;Category B > Subcategory C";
$str = preg_replace("/(?<!\>);/", "/", $str);
echo $str;
HTML - 디코드 아래의 문자열을 코드를 사용할 수있다? – David