2012-06-10 2 views
0

문자 '\"''"'을 구분하는 방법을 알고있는 사람이 있습니까? 문자열을 사전 처리하려고하는데이 문장은 나를 혼란스럽게합니다.Salesforce Apex 문자열 교체 재밌는 사업

system.assert(' "b" ' == ' "\"" '.replace('\"','b'); //FAILS, returns ' bbb ' 

답변

0

를, 세일즈 포스는 기본적으로 백 슬래시를 무시 :

system.assert('"' == '\"'); // yup 
system.assertEquals(1, '\"'.length()); // just one character 
system.assertEquals(1, '"'.length()); // just one character--the same one 

원래 문자열이 진짜 백 슬래시 문자가있는 경우,이 같은 다른 백 슬래시로 이스케이프 할 필요가 백 슬래시는 다음과 같습니다

system.assertEquals(1, '\\'.length()); // just one character: \ 
system.assertEquals(2, '\\"'.length()); // two characters: \" 
system.assert(' "b" ' == ' "\\"" '.replace('\\"','b')); 
0

이 하나를 시도하십시오 수() '' '\ (대신 교체 "'(\ '을 대체 : 여기에 그림과 같이 당신의 예에서

system.assert(' "b" ' == ' "\"" '.replace('\\"','b');