2014-02-21 1 views
0

나는 파이프를 가지고 있습니다. | 나는 밖으로 보내고 문자열 필드에서 클라이언트는 포인트를 분리하기 위해 임의의 문자로 파이프를 사용하고 있습니다.약 .replace in 속도

예. 이것이 그들이 현장에서 사용하는 텍스트입니다.

Encore AWD | Leather | Navigation | Sunroof | Back Up Camera | USB | Bluetooth 

| 와 - 그리고 이것은 내가 노력하고있는 코드입니다.

#set ($va.list_comment = $va.listing_comment.replace("|", "-")) 

여전히 출력 중입니다. 문자.

누구나 내가 여기서 잘못 할 수있는 아이디어가 있습니까?

+0

: 그것은 여전히 ​​작동하지 않는 경우, 반드시 반환 값이 실제로 그 밖에 java.lang.String 아니라 뭔가 할

$va.listing_comment.replace("|", "-") 

: 그냥 결과를 인쇄 ing.replace' 그것은 문자열이 아닌 정규식을 기대하기 때문입니다. 나는 특수 문자를 먼저 이스케이프하고 그 것이 작동하는지 확인하려고한다. –

+0

['replaceAll'] (http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#replaceAll%28java.lang.String,%20java.lang.String%29) 정규 표현식으로 작동하며 ['replace'] (http://docs.oracle.com/javase/6/docs/api/java/lang/String.html#replace%28java.lang.CharSequence,%20java.lang. CharSequence % 29)가 일반 텍스트 항목을 대체합니다. –

답변

1

개체에 새 값을 할당 할 수 없습니다. Velocity의 최신 버전을 사용하고 있다면 이면 setList_comment이거나 Map 일 경우 $va이됩니다. 그냥 한 번 인쇄하는 것보다 무엇을 위해 그 값을 필요로하지 않는 경우

#set ($fixedListing = $va.listing_comment.replace("|", "-")) 
$fixedListing 

또는 완전히 할당을 건너 : 그렇지 않으면, 당신은 단지 새로운 가치를 호스팅하고 그것을 사용하는 새로운 변수를 생성 할 것 그것은`str을 일반 자바의 경우

$va.listing_comment.class