Как заменить одиночный sla sh "\" на "\\\" в Objective- C - PullRequest
0 голосов
/ 23 января 2020

Я пытаюсь заменить одиночный sla sh на тройной sla sh в Objective- C. Я не могу выполнить преобразование.

Пример:

NSString *string = "pW`-={}|[]456\";

string =  [string stringByReplacingOccurrencesOfString:@"\\\" withString:@"\"];

Я хочу вывести: pW` - = {} | [] 456 \\

1 Ответ

0 голосов
/ 23 января 2020

Каждый back-sla sh в строковом литерале Objective- C должен быть представлен двумя обратными слешами (первый экранирует back-sla sh), иначе он даже не будет компилироваться, поэтому

Если вы хотите преобразовать это

pW`-={}|[]456\

в это

pW`-={}|[]456\\\

, необходимо вызвать

string = [string stringByReplacingOccurrencesOfString:@"\\" withString:@"\\\\\\"];

, если наоборот, то соответственно

string = [string stringByReplacingOccurrencesOfString:@"\\\\\\" withString:@"\\"];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...