Регулярное выражение, чтобы определить, действителен ли частичный ввод JSONJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Регулярное выражение, чтобы определить, действителен ли частичный ввод JSON

Сообщение Anonymous »

У меня есть сценарий, в котором мне нужно подтвердить, является ли частичный ввод (см. Ниже) действительным JSON или нет? Я направил этот ответ, чтобы определить, является ли данная строка действительным JSON или нет. < /p>

Пример ввода: < /p>

Код: Выделить всё

 {
"JSON": [{
"foo":"bar",
"details": {
"name":"bar",
"id":"bar",
Что я уже пробовал:

/ (?(DEFINE)
(? -? (?= [1-9]|0(?!\d) ) \d+ (\.\d+)? ([eE] [+-]? \d+)? )
(? true | false | null )
(? " ([^"\n\r\t\\\\]* | \\\\ ["\\\\bfnrt\/] | \\\\ u [0-9a-f]{4} )* " )
(? \[ (?: (?&json) (?: , (?&json) )* )? \s* \]{0,1} )
(?
\s* (?&string) \s* : (?&json) )
(? \{ (?: (?&pair) (?: , (?&pair) )* )? \s* \}{0,1} )
(? \s* (?: (?&number) | (?&boolean) | (?&string) | (?&array) | (?&object) ) \s* )
) \A (?&json)\,{0,1} \Z /six
< /code>

Я сделал закрытие массива и объектов необязательно (разрешить ноль или один раз). Но есть некоторые случаи, когда это потерпит неудачу, например, когда вы откроете объект, не закрывая другой объект (показанный ниже), регулярность все еще найдет совпадение. < /p>

Недостаточно, но все же соответствует: < /p>

{
"JSON": [{
"foo":"bar",
"details": {
"name":"bar",
"id":"bar",{
< /code>

Как проверить частичный ввод JSON? Итак, теперь мне нужна корпорация, которая должна работать без рекурсии


Подробнее здесь: https://stackoverflow.com/questions/601 ... valid-json
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»