#java #escaping
#java #экранирование
Вопрос:
Как записать escape-символ «» в строку?
Комментарии:
1. у меня есть такой код: String newstr = «»;
2. java указывает свой законный escape-символ с помощью «\», я его не вижу.
Ответ №1:
В обычной строке вы используете \
Если это в регулярном выражении, оно должно быть \\
Причина, по которой регулярному выражению требуется четыре, заключается в том, что как анализатор строк, так и движок регулярных выражений поддерживают экранирование. Следовательно, анализатор строк \\
преобразует его в \
, а затем в литерал
с помощью анализатора регулярных выражений.
Ответ №2:
Экранировать escape-символ: "\"
Комментарии:
1. Я откатил свою первоначальную правку к этому сообщению, потому что не был уверен, что знаю, что вы намеревались написать 🙂
2. Не беспокойтесь. Теперь все исправлено. 🙂
Ответ №3:
Вы экранируете определенные символы, добавляя «» перед символом.
Так \
будет работать для вас.
Ответ №4:
Используйте double в строке
String example = "C:\Program Files";
Ответ №5:
string = @"c:inetpubwwwroot"
это то же самое, что
string = "c:\inetpub\wwwroot\"
в некоторых случаях… я не уверен на 100%, но я думаю, что это может зависеть от языка … я ЗНАЮ, что «@» работает в C#
Комментарии:
1. Конечно, это зависит от языка :). И это не работает в java.
2. ну, поскольку в op не упоминался язык, он никогда не упоминался до его 2-го комментария, что это java … и он не помечен как java, это мог бы быть правильный ответ.
3. Java отображается в тегах вопроса. Постер пометил это как Java максимум через 5 минут после того, как был задан вопрос (поскольку не отображается, что в нем есть какие-либо изменения).
Ответ №6:
Вы можете написать:
String newstr = "\";
является специальным символом в строке, используемым для экранирования.
""
теперь работает, потому что он экранирует второй "
.
Чтобы получить литерал,
вам нужно экранировать его с помощью
.