Что такое недействительные символы

Обновлено: 02.07.2024

Пользователи мессенджера нередко сталкиваются со следующей ошибкой Zoom — этот идентификатор конференции недействителен. В таких обстоятельствах возникает много предположений, что могло привести к появлению надписи, и как устранить проблему. Ниже рассмотрим, в чем суть этого кода, как его использовать, и что делать при появлении ошибки.

Что такое идентификатор конференции, и зачем он нужен

Начинающие пользователи, как правило, пользуются программой без понимания ее особенностей и принципов работы. В частности, они не разбираются, что значит ошибка Укажите идентификатор конференции в Zoom, и в чем вообще особенность опции.

Простыми словами, PMI — набор символов, состоящий из 10-11 знаков (это число может отличаться) и предназначенный для входа в веб-конференцию. Он задается автоматически программой Zoom при планировании трансляции или сразу при ее подключении.

При рассмотрении вопроса касательно идентификатора конференции в Зуме, и что это такое, важно понимать способы его получения. Здесь имеется несколько вариантов:

  • Раздел Конференции. Сразу после планирования трансляции перейдите в указанную выше категорию и посмотрите PCI в Zoom.



  • Раздел Участники. Во время прямого эфира жмите на кнопку Участники , а после на Пригласить . В верхней части появляется необходимый параметр.


Не менее важные моменты, касающиеся идентификатора персональной конференции в Zoom — что это, и где его найти. Это фиксированная информация, которая индивидуальна для каждого пользователя. Ее изменение возможно только при покупке подписки на программу. Для получения информации перейдите в раздел Конференции в программе Zoom и копируйте данные. Интересующие цифры находятся слева вверху и в центре.

Как войти в конференцию по идентификатору

Выше мы рассмотрели базовый вопрос — что такое индикатор конференции в Zoom, и где его получить в программе. Допустим, вы имеет в руках эту информацию, но теперь необходимо сделать следующий шаг, а именно зайти в трансляцию по имеющемуся коду. Для решения вопроса можно использовать разные устройства — компьютер или телефон. Приведем пошаговую инструкцию для разных девайсов.

  • Войдите в приложение. Для входа в веб-конференцию регистрация не обязательна.
  • Кликните на кнопку Войти , которая расположена на главной панели.



  • Введите имя, если оно не задано по умолчанию.
  • Установите отметки в поля Выключать мое видео или Не подключать звук (по желанию).
  • Жмите на кнопку Войти.
  1. Войдите в приложение Zoom на смартфоне.
  2. Кликните на кнопку Войти .
  3. Введите идентификатор веб-конференции.
  4. Скорректируйте имя или внесите его, если оно не указано.
  5. Выберите параметры подключения звука или видео (по желанию).

Что значит — идентификатор конференции недействителен

Недействителен для пользователя

Если вы пытаетесь войти в трансляцию Zoom рассмотренным выше способом, но система пишет, что идентификатор недействителен, не торопитесь писать в службу поддержки. Во многих случаях проблема решается одним из следующих шагов:

  • Попробуйте ввести данные еще раз. Возможно, вы допустили ошибку в одной цифре, из-за чего система не пускает и пишет, что код недействителен.
  • Убедитесь, что из буфера обмена добавляется интересующая вас комбинация, а не устаревшие данные.
  • Свяжитесь с администратором веб-конференции и спросите у него, какой идентификатор является рабочим. Возможно, старый набор цифр уже не работает.
  • Выждите некоторое время. Возможно, трудности вызваны техническим сбоем сервиса. В таком случае нужно выждать какое-то время и попробовать подключиться еще раз.

Недействителен для администратора

Часто надпись, что этот идентификатор конференции недействителен, появляется в ситуации, когда администратор пытается войти в ранее запланированную конференцию. Если код был изменен, войти по старым данным уже не получится. Придется отменять старый прямой эфир и создавать новую веб-конференцию. Этот процесс не вызывает трудностей. При этом имеется три варианта:

На официальном сайте техподдержки Zoom сказано, что больше программа не будет указывать, действителен или недействителен идентификатор. При очередной попытке страница будет загружаться и пытаться подключиться к собранию. Благодаря этой особенности, хакер не сможет быстро проверить разные трансляции для подключения к ним.

Итоги

Теперь вы знаете, что значит идентификатор конференции в Zoom, как его найти, и что делать, если код недействителен. Знание этих особенностей упрощает процесс пользования приложением и уменьшает вероятность ошибок со стороны пользователя.

Что такое недопустимые символы в XML

Я работаю с некоторым XML, который содержит такие строки, как:

Это недействительно из-за & .

Я не могу обернуть эти строки в CDATA, поскольку они должны быть такими, какие они есть. Я попытался найти список символов, которые нельзя поместить в узлы XML, не находясь в CDATA.

Может ли кто-нибудь указать мне на один из них или предоставить список запрещенных символов?

Единственными недопустимыми символами являются & , и > (так же как ' или же ' в атрибутах, в зависимости от того, какой символ используется для ограничения значения атрибута: attr='must use ' here, ' is allowed' и attr='must use ' here, ' is allowed' ).

Они экранируются с помощью сущностей XML, в этом случае вы хотите & за & .

На самом деле, однако, вам следует использовать инструмент или библиотеку, которая пишет за вас XML и абстрагирует такие вещи, чтобы вам не приходилось об этом беспокоиться.

  • 89 Некоторые управляющие символы также не разрешены. Смотрите мой ответ ниже.
  • 47 На самом деле это не совсем так. Также недопустимы некоторые младшие символы ascii. Если вы попытаетесь записать 0x03 в документ Xml, вы обычно получите ошибку, и если вам удастся правильно преобразовать ее в документ XML, большинство зрителей будут жаловаться на недопустимый символ. Пограничный случай, но такое бывает.
  • 19 Этот ответ абсолютно неверен. Вот мое исключение XML с недопустимым символом 0x12 'System.Xml.XmlException:', шестнадцатеричное значение 0x12, является недопустимым символом '
  • 9 Это также неправильно в другом направлении; Помимо отсутствия каждого недопустимого символа, символы, которые он объявляет незаконными, являются совершенно законными, хотя и имеют особое значение в контексте.
  • 6 В XML 1.0 есть много недопустимых символов. Фактически, даже использование символьной сущности для большинства управляющих символов вызовет ошибку при синтаксическом анализе.

Хорошо, давайте разделим вопрос о персонажах, которые:

  1. вообще не действительны ни в одном XML-документе.
  2. нужно бежать.

Описанные здесь символы - это все символы, которые разрешено вставлять в XML-документ.

1.1. В XML 1.0

Глобальный список разрешенных символов:

Как правило, управляющие символы и символы вне диапазона Unicode не допускаются. Это также означает, что вызов, например, сущности символа  запрещен.

1.2. В XML 1.1

  • Ссылка: см. Рекомендацию XML 1.1, §2.2 Символы и 1.3. Обоснование и список изменений для XML 1.1.

Глобальный список разрешенных символов:

Эта редакция рекомендации XML расширила разрешенные символы, поэтому разрешены управляющие символы, и учитывает новую версию стандарта Unicode, но эти по-прежнему не разрешены: NUL (x00), xFFFE, xFFFF.

Однако использование управляющих символов и неопределенных символов Unicode не рекомендуется.

Также можно заметить, что все парсеры не всегда учитывают это, и документы XML с управляющими символами могут быть отклонены.

В необходимо избежать с помощью entity, поскольку предполагается, что это начало тега.

В & необходимо избежать с помощью & entity, поскольку предполагается, что это начало ссылки на объект

В > следует избегать с помощью > юридическое лицо. Это не обязательно - это зависит от контекста, но настоятельно рекомендуется избегать его.

В ' следует избегать с помощью ' entity - обязателен для атрибутов, определенных в одинарных кавычках, но настоятельно рекомендуется всегда избегать его.

В ' следует избегать с помощью ' entity - обязателен для атрибутов, определенных в двойных кавычках, но настоятельно рекомендуется всегда избегать его.

  • "но настоятельно рекомендуется избегать этого" - Не могли бы вы уточнить это? Кто это советует и почему? (На мой взгляд, нет ничего плохого в использовании буквальных кавычек везде, где они синтаксически разрешены.)

Список допустимых символов находится в спецификации XML:

Предварительно заявленные символы:

    Неправильно. Не все они недействительны. Только & и ]]> последовательность символов. Потому что он соответствует концу блока CDATA.

Если все еще есть недопустимые символы (например, управляющие символы), возможно, лучше использовать какую-то кодировку (например, base64).

  • 3 Находится ли в блоке CDATA или нет, некоторые символы запрещены в XML.
  • 6 точно, разве я не это написал? цитата: "все персонажи в следующем диапазоне". Под этим я подразумеваю, только символы в этом конкретном диапазоне. Другие символы не допускаются. - полностью согласен; но я не понимаю отрицательного ответа. - однако никаких обид.

или вы можете проверить, что все символы действительны для XML:

Например, символ вертикальной табуляции ( \v ) недопустим для XML, это допустимый UTF-8, но недопустимый XML 1.0, и даже многие библиотеки (включая libxml2) пропускают его и выводят неверный XML без уведомления.

  • Недопустимые символы
  • 1 Он писал Xml, а не Html.

Таким образом, допустимые символы в тексте:

  • табуляция, перевод строки и возврат каретки.
  • все неконтролирующие символы действительны Кроме & и .
  • > недействительно, если следующее ]] .

Разделы 2.2 и 2.4 спецификации XML предоставляют подробный ответ:

Символы

Допустимые символы - табуляция, возврат каретки, перевод строки и допустимые символы Unicode и ISO / IEC 10646.

Данные персонажа

"XmlWriter и нижние символы ASCII" работали для меня

Для пользователей Java в Apache есть служебный класс ( StringEscapeUtils ), у которого есть вспомогательный метод escapeXml который можно использовать для экранирования символов в строке с помощью сущностей XML.

В процессоре Woodstox XML недопустимые символы классифицируются следующим кодом:

Кто-нибудь пробовал это System.Security.SecurityElement.Escape(yourstring) ? Это заменит недопустимые символы XML в строке их действительным эквивалентом.

Для XSL (в очень ленивые дни) я использую:

У нас бывают случаи, когда ввод находится в CDATA, но система, использующая XML, не принимает его во внимание. Это небрежное решение, берегитесь .

Но прежде чем мы продолжим, вот еще несколько примеров этой проблемы:

  • Путь к папке “Program Files (x86)” содержит недопустимый символ
  • Ошибка 1324: путь к программным файлам содержит недопустимый символ
  • Путь к папке с эпическими играми содержит недопустимого персонажа
  • Ошибка 1324 путь к папке в моих документах содержит недопустимый символ
  • Путь к папке “меню Пуск” содержит недопустимый символ
  • Имя файла или путь содержит недопустимые символы
  • Путь к папке лиги легенд содержит недопустимый символ

Содержание .

Решение 1. Удалите все из папки TEMP


  1. Нажмите Windows Key + R , чтобы открыть окно Запустить . Введите % appdata% и нажмите Enter или нажмите ОК .
  2. Перейдите в % USERPROFILE% \ AppData \ Local \ Temp . Возможно, вам придется перейти на одну папку вверх, чтобы получить доступ к папке Temp .
  3. Удалите все из папки Temp и попробуйте снова установить программное обеспечение.

Решение 2. Измените буквы дисков для приводов CD или DVD

  1. Нажмите Windows Key + S и введите Управление компьютером . Выберите Управление компьютером из списка результатов.
  2. Нажмите Управление дисками на левой панели. Список ваших дисков должен появиться на правой панели.
  3. Найдите свой привод CD/DVD , щелкните его правой кнопкой мыши и выберите Изменить букву диска .
  4. Выберите диск и нажмите Удалить . Обязательно запомните букву DVD-диска, она понадобится вам позже.
  5. Если у вас несколько приводов CD/DVD, повторите Шаги 3 и 4 для всех из них.
  6. Перезагрузите компьютер.
  7. После перезагрузки компьютера снова перейдите в Управление компьютером .
  8. Нажмите Управление дисками и найдите свой привод CD/DVD.
  9. Нажмите правой кнопкой мыши и выберите Изменить буквы диска . Нажмите Добавить .
  10. Теперь назначьте ту же букву вашему DVD-приводу, который вы удалили на шаге 4.
  11. Нажмите ОК , чтобы сохранить изменения. Если у вас есть больше DVD-дисков, вам придется повторить эти шаги для всех из них.

Решение 1. Удалите все записи Apple из реестра .


  1. Откройте редактор реестра . Чтобы открыть редактор реестра , нажмите Ключ Windows + R и введите regedit в окне Выполнить . Нажмите ОК или нажмите Enter , чтобы запустить Редактор реестра .
  2. Когда откроется Редактор реестра , перейдите к следующему ключу:
    • HKEY_LOCAL_MACHINE \ SOFTWARE \
  3. Найдите Apple Inc. и Apple Computers Inc. , щелкните их правой кнопкой мыши и выберите Удалить .
  4. Закройте редактор реестра и попробуйте снова установить iTunes .

Решение 2. Убедитесь, что у вас достаточно прав для доступа к определенным разделам реестра .

  1. Откройте Редактор реестра от имени администратора . Для этого введите regedit в панели поиска , щелкните правой кнопкой regedit в списке результатов и выберите Запуск от имени администратора .
  2. Когда откроется Редактор реестра , перейдите к следующему ключу:
    • HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Installer \ UserData \ S-1-5-18 \ Компоненты
  3. Нажмите правой кнопкой мыши Компоненты и выберите в меню Разрешения .
  4. В разделе Группы или имена пользователей выберите Пользователи и в разделе Права для пользователей выберите Полный доступ .
  5. Нажмите Применить и ОК , чтобы сохранить изменения.
  6. Закройте Редактор реестра и попробуйте переустановить iTunes еще раз.

Решение 1. Извлеките файлы из установщика .msi


  1. Загрузите установочный файл Steam.
  2. Откройте командную строку . Вы можете открыть его, нажав Windows Key + X и выбрав в меню Командная строка .
  3. Когда Командная строка статистика, вам нужно ввести следующее:
    • msiexec/a PathToMSIFile/qb TARGETDIR = DirectoryToExtractTo
  4. Не забудьте заменить PathToMSIFile на местоположение вашего установочного файла Steam, а DirectoryToExtractTo на местоположение, где вы хотите извлечь этот MSI-файл.
  5. Запустите эту команду. После извлечения MSI-файла перейдите в его расположение и запустите Steam.exe .

Решение 2. Удалить ключи реестра Valve


  1. Откройте редактор реестра .
  2. Нажмите Control + F и введите Valve в поле ввода.
  3. Нажмите Найти далее .
  4. Когда ключ Valve найден, нажмите его правой кнопкой мыши и нажмите Удалить .
  5. Нажмите F3 , чтобы повторить поиск. Если вы найдете больше ключей Valve, убедитесь, что вы удалили их все .
  6. Закройте Редактор реестра и попробуйте установить Steam еще раз.

Решение 1. Установите программное обеспечение от имени другого пользователя

Решение 2. Удалите недопустимый символ с помощью редактора реестра

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

Решение 3. Используйте стороннее программное обеспечение для удаления проблемных программ

Решение 4. Удалите ссылки на League of Legends из реестра .


  1. Откройте редактор реестра .
  2. Перейдите к следующей клавише:
    • HKEY_LOCAL_MACHINE> ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ> Классы> Установщик> Продукты

  3. Вы должны увидеть много подразделов. Вам нужно просмотреть все из них и удалить те, которые имеют ссылки на League of Legends. Чтобы удалить ключ, просто щелкните его правой кнопкой мыши и выберите в меню Удалить .

Мы должны предупредить вас, что, удалив эти ключи, вы можете повредить реестр, если удалите неправильные ключи. В худшем случае некоторые программы могут перестать работать, если вы случайно удалите их ключи реестра, поэтому будьте осторожны, если вы решите сделать этот шаг. Чтобы избежать ненужного повреждения, вы можете создать резервную копию своего реестра, прежде чем удалять эти ключи.

Решение 5. Убедитесь, что вы запускаете установку из учетной записи администратора .

Примечание редактора . Этот пост был первоначально опубликован в феврале 2016 года и с тех пор был полностью переработан и обновлен для обеспечения свежести, точности и полноты.

Веб-страницы, которые вы посещаете онлайн, создаются с использованием HTML-кода, который сообщает веб-браузерам, что такое содержимое страницы и как визуально отображать ее для зрителей. Код содержит учебные строительные блоки, известные как элементы, которые никогда не видит программа просмотра веб-страниц. Код также содержит обычные текстовые символы, такие как заголовки и абзацы, предназначенные для чтения.

Роль специальных символов в HTML

Когда вы используете HTML и набираете текст, предназначенный для просмотра, вам обычно не нужны никакие специальные коды – вы просто используете клавиатуру компьютера, чтобы добавить соответствующие буквы или символы. Проблема возникает, когда вы хотите ввести символ в читаемый текст, который HTML использует как часть самого кода. Эти символы включают символы, которые используются в коде для начала и завершения каждого тега HTML. Вы также можете включить в текст символы, не имеющие прямого аналога на клавиатуре, такие как © и С. Для символов, на клавиатуре которых нет клавиши, вы вводите код.

Специальные символы – это отдельные фрагменты кода HTML, предназначенные для отображения символов, которые используются в коде HTML, или для включения символов, которые не обнаружены на клавиатуре, в текст, который видит зритель. HTML отображает эти специальные символы с помощью числовой или символьной кодировки, чтобы их можно было включить в документ HTML, прочитать в браузере и правильно отобразить для посетителей вашего сайта.

Когда вы вводите эти символы непосредственно в свой HTML-код – если только вы не используете их в качестве элементов в коде – введите их кодировку, чтобы они правильно отображались в читаемом тексте:

Специальные символы, которые вы не можете ввести

Любой символ, который можно отобразить в стандартном наборе символов Latin-1, можно отобразить в HTML. Если он не отображается на клавиатуре, вы используете символ амперсанда с уникальным кодом, назначенным символу, за которым следует точка с запятой.

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

Каждый символ, который может быть напечатан на экране, имеет соответствующий десятичный числовой код. Вы можете использовать этот числовой код для отображения любого символа. Например, десятичный числовой код для символа авторского права – © – демонстрирует, , как работают числовые коды. Они по-прежнему начинаются с амперсанда и заканчиваются точкой с запятой, но вместо понятного текста вы используете знак числа, за которым следует уникальный числовой код для этого символа.

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

Лучший способ найти числовые коды для символов – это наборы символов, которые можно найти в Интернете. Когда вы найдете нужный вам символ, просто скопируйте и вставьте числовой код в ваш HTML.

Некоторые наборы символов включают в себя:

  • Коды валют
  • Математические коды
  • Коды пунктуации
  • Коды произношения
  • Коды диакритических знаков

Неанглоязычные символы

Специальные символы не ограничиваются английским языком.Специальные символы на неанглийских языках могут быть выражены в HTML, включая:

  • испанский
  • Французский
  • греческий
  • румынский

Так что же такое шестнадцатеричные коды?

Шестнадцатеричный код – это альтернативный формат для отображения специальных символов в коде HTML. Вы можете использовать любой метод для своей веб-страницы. Вы просматриваете их в наборах символов онлайн и используете их так же, как вы используете дружественные коды или числовые коды.

Добавьте объявление Unicode в заголовок документа

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

подсказки

Независимо от того, какой метод вы используете, помните несколько лучших практик:

В общем, URI, определенные в RFC 3986 (см. Раздел 2: Символы), могут содержать любой из следующих символов:

Обратите внимание, что в этом списке не указано, где в URI могут возникать эти символы.

Любой другой символ должен быть закодирован с помощью процентного кодирования ( % hh ). Каждая часть URI имеет дополнительные ограничения относительно того, какие символы должны быть представлены процентным кодированным словом.

144 JasonM1 [2012-11-21 21:50:00]

Чтобы добавить некоторые пояснения и непосредственно обратиться к указанному выше вопросу, существует несколько классов символов, которые вызывают проблемы для URL-адресов и URI.

Есть некоторые символы, которые запрещены и не должны появляться в URL/URI, зарезервированных символах (описанных ниже) и других символах, которые могут вызвать проблемы в некоторых случаях, но отмечены как "неразумные" или "небезопасные". Объяснения, почему символы ограничены, четко прописаны в RFC-1738 (URL) и RFC-2396 (URI). Обратите внимание, что новый RFC-3986 (обновление до RFC-1738) определяет, какие символы допускаются в данном контексте, но более старая спецификация предлагает более простое и более общее описание того, какие символы не допускаются со следующими правилами.

Исключенные символы US-ASCII, запрещенные в синтаксисе URI:

Список неразумных символов разрешен, но может вызвать проблемы:

Символы, зарезервированные в компоненте запроса и/или имеющие особое значение в URI/URL:

"Сдержанный" класс синтаксиса выше относится к тем символам, которые разрешены в URI, но которые не могут быть разрешены в определенном компоненте синтаксиса общего URI. Символы в "зарезервированном" наборе не зарезервированы во всех контекстах. Например, имя хоста может содержать необязательное имя пользователя, поэтому может быть что-то вроде ftp://[email protected]/ где символ "@" имеет особое значение.

Вот пример URL-адреса с недопустимыми и неразумными символами (например, '$', '[', ']') и должен быть правильно закодирован:

56 Mark Amery [2016-04-16 20:17:00]

Хорошо, поэтому согласно RFC 3986, такие адреса не являются URI (и, следовательно, не являются URL-адресами, поскольку URL - это тип URI). Если мы считаем себя обязательными для терминологии существующих стандартов IETF, тогда мы должны правильно назвать их IRI (интернационализированные идентификаторы ресурсов), как определено в RFC 3987, которые технически не являются URI, но могут быть преобразованы в URI просто путем процентного кодирования всех символов, отличных от ASCII, в IRI. Обычные люди, однако, никогда не слышали об IRI и просто называли эти URI или URL-адреса (и действительно там WHATWG предпринимались для создания нового, более широкого URL-спецификация, которая просто классифицирует все "URI" и "IRI" как "URL-адреса" для согласования с современным использованием этих терминов в реальном мире).

Предположим, мы хотим немедленно принять это значение URL (что противоречит спецификации IETF, но выравнивает нас с повседневным использованием). В этом случае, какие символы действительны в URL?

Прежде всего, у нас есть два типа RFC 3986 зарезервированные символы:

Любой из зарезервированных символов, приведенных выше, может быть юридически использован в URI без кодирования, чтобы служить своей синтаксической цели или буквально буквами в данных в некоторых местах, где такое использование не могло быть неверно истолковано как символ, служащий своей синтаксической цели. (Например, хотя / имеет синтаксический смысл в URL-адресе, вы можете использовать его незакодированным в строке запроса, потому что он не имеет смысла в строке запроса.)

RFC 3986 также указывает некоторые незарезервированные символы, которые всегда можно использовать просто для представления данных без какой-либо кодировки:

  • abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~

Наконец, сам символ % разрешен для процентных кодировок.

Это оставляет только следующие символы ASCII, которые запрещены для отображения в URL-адресе:

  • Управляющие символы (символы 0-1F и 7F), включая новую строку, вкладку и возврат каретки.
  • "<>\^`

Каждый другой символ из ASCII может юридически отображаться в URL-адресе.

Затем RFC 3987 расширяет этот набор незарезервированных символов со следующими диапазонами символов Юникода:

U + 00A0 - U + D7FF, U + E000 - U + FDCF, U + FDF0 - U + FFFD, U + 10000 - U + 1FFFD, U + 20000 - U + 2FFFD, U + 30000 - U + 3FFFD, U + 40000 - U + 4FFFD, U + 50000 - U + 5FFFD, U + 60000 - U + 6FFFD, U + 70000 - U + 7FFFD, U + 80000 - U + 8FFFD, U + 90000 - U + 9FFFD, U + A0000 до U + AFFFD, U + B0000 - U + BFFFD, U + C0000 - U + CFFFD, U + D0000 - U + DFFFD, U + E0000 - U + EFFFD, U + F0000 - U + FFFFD, U + 100000 к U + 10FFFD

Стоит внимательно прочитать RFC 3986, если вы хотите полностью понять проблему.

11 CraigTP [2009-10-10 16:22:00]

Все допустимые символы, которые могут использоваться в URI (URL - это тип URI) определены в RFC 3986.

Все остальные символы могут использоваться в URL-адресе при условии, что они сначала "кодируются URL". Это включает в себя изменение недопустимого символа для определенных "кодов" (обычно в виде символа процента (%), за которым следует шестнадцатеричное число).

Эта ссылка, Справочник по кодированию URL HTML содержит список кодировок для недопустимых символов.

Несколько из диапазонов символов Unicode действительны HTML5, хотя, возможно, это не будет хорошей идеей их использования.

Атрибут href для элементов a и area должен иметь значение, которое является допустимым URL, потенциально окруженным пробелами.

Выполните выравнивание RFC 3986 и RFC 3987 с помощью современных реализаций и устаревших в процессе.

ASCII буквенно-цифровые, "!", "$", "&", "'", "(", ")", "*", "+", ",", "-", ".", "/", ":", ";", "=", "?", "@", "_", "~" и кодовые точки в диапазонах U + 00A0 до U + D7FF, U + E000 U + FDCF, U + FDF0 до U + FFFD, U + 10000 - U + 1FFFD, U + 20000 - U + 2FFFD, U + 30000 - U + 3FFFD, U + 40000 - U + 4FFFD, U + 50000 - U + 5FFFD, U + 60000 - U + 6FFFD, U + 70000 - U + 7FFFD, U + 80000 - U + 8FFFD, U + 90000 - U + 9FFFD, U + A0000 - U + AFFFD, U + B0000 - U + BFFFD, U + C0000 - U + CFFFD, U + D0000 - U + DFFFD, U + E1000 - U + EFFFD, U + F0000 - U + FFFFD, U + 100000 - U + 10FFFD.

В заявлении используется термин "URL-коды кодов":

Если c не является кодовой точкой URL, а не "%", ошибка синтаксического анализа.

в нескольких частях алгоритма синтаксического анализа, включая отношения схемы, полномочий, относительного пути, запроса и фрагмента: так что в основном весь URL.

Кроме того, валидатор http://validator.w3.org/ передает URL-адреса, такие как "你好" , и не передает URL-адреса с такими символами, как пробелы "a b"

Конечно, как упоминал Стивен С, речь идет не только о персонажах, но и о контексте: вы должны понимать весь алгоритм. Но поскольку в ключевых точках алгоритма используется класс "URL-коды кода", это дает хорошее представление о том, что вы можете использовать или нет.

5 Bunyk [2014-02-11 20:57:00]

Мне нужно выбрать символ для разделения URL-адресов в строке, поэтому я решил создать список символов, который сам по себе не найден в URL:

Таким образом, возможны варианты: новая строка, табуляция, пробел, обратная косая черта и "<><>^| . Думаю, я пойду с пространством или новой линией.:)

4 ChrisR [2009-10-10 16:19:00]

Не совсем ответ на ваш вопрос, но проверка url действительно серьезная p.i.t.a Возможно, вам просто лучше проверить доменное имя и оставить запрос частью URL-адреса. Это мой опыт. Вы также можете прибегнуть к проверке URL-адреса и выяснению, приводит ли он к действительному ответу, но это может быть слишком большим для такой простой задачи.

Регулярные выражения для обнаружения URL-адреса в изобилии, google it:)

-2 relipse [2016-12-26 21:36:00]

-3 knittl [2009-10-10 16:19:00]

Используйте urlencode, чтобы разрешить произвольные символы в вашем URL-адресе.

Читайте также: