Лучший способ избежать строки JavaScript? (JSON?) - PullRequest
1 голос
/ 20 декабря 2009

Использование C # .net Я анализирую некоторые данные с некоторым частичным html / javascript внутри (я не знаю, кто принял это решение), и мне нужно нажать ссылку. Ссылка выглядит так

http:\/\/fc0.site.net\/fs50\/i\/2009\/name.jpg

Это произошло от того, что я предполагаю, что это javascript и выглядит как json

"name":{"id":"589","src":"http:\/\/fc0.site.net\/fs50\/i\/2009\/name.jpg"}

Но в любом случае, как мне избежать первой ссылки, чтобы я получил http://fc0.site.net/fs50/i/2009/name.jpg

В этом случае я мог бы просто заменить '\' на '', поскольку ссылки не содержат \ ни ", поэтому я мог бы сделать это, но я фанат знания правильного решения и правильного выполнения действий. Так как же мне избежать этого? Посмотрев на эту ссылку в течение минуты, я подумал, действительно ли ? Java-скрипт или json escape / with \? Кажется, это не так?

Ответы [ 4 ]

1 голос
/ 20 декабря 2009

В вашем случае:

"name":{"id":"589","src":"http://fc0.site.net/fs50/i/2009/name.jpg"}

"/" является допустимой escape-последовательностью. Тем не менее, не требуется, чтобы / было экранировано. Вы можете избежать этого, если вам нужно. Причина, по которой JSON явно позволяет экранировать косую черту, заключается в том, что HTML не позволяет строке в a содержать "...

Обновление:

0 голосов
/ 20 декабря 2009

На самом деле вы хотите unescape строку. Ответил в на этот вопрос .

0 голосов
/ 20 декабря 2009

Почему бы вам не попробовать регулярные выражения в экранированных слешах, чтобы заменить их в коде C # ...

String url = @"http:\/\/fc0.site.net\/fs50\/i\/2009\/name.jpg";

String pattern = @"\\/";

String cleanUrl = Regex.Replace(url, pattern, "/");

Надеюсь, это поможет!

0 голосов
/ 20 декабря 2009

Странно, это не похоже на любой выход из JavaScript / JSON, который вы ожидаете. Вы можете иметь прямую косую черту в строках JavaScript просто отлично.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...