2016-09-30 4 views
1

에 해당하는 문자열의 발행 수를 교체 :내가 다음 문자열이 정규식

$a = "test1"; 
$b = "test 2"; 
$c = "test<3"; 
$d = "test&4"; 

좀 문자로 "&은"다음의 발생을 대체하고에 의해 종료 싶다 ";".

출력은 다음과 같아야합니다

$a = "test1"; 
$b = "test 2"; 
$c = "test 3"; 
$d = "test&4"; 

어떻게 PHP로 그렇게 할 수 있습니까?

답변

2

사용하려고 :

$x = preg_replace('/&[a-z]+;/', ' ', $b); 
echo $x; 
4

이 특정한 경우에, 당신은 정규식이 필요하지 않습니다는 가장 가능성이 당신이 필요로하는 무엇을 HTML 엔티티를 디코딩하고, 그와 같이, html_entity_decode() 수행 할 수 있습니다 :

$a = html_entity_decode("test1"); 
$b = html_entity_decode("test 2"); 
$c = html_entity_decode("test<3"); 
$d = html_entity_decode("test&4"); 

var_dump($a,$b,$c,$d); 
+1

이 솔루션은' "TES을 반환합니다 t <3 "', OP에는''test 3 ''이 필요합니다. –

1

의 대답 @ this.lau_은 최고입니다,하지만 당신은 정규 표현식을 원하는 경우,이이

(\&)([a-z]{1,4})(;) 
관련 문제