Я пытаюсь проанализировать JSON с помощью Grails, протестировать синтаксический анализатор. Я написал модульный тест и поместил свой входной JSON в строку GString, которая выглядит примерно так:
"""{"Information":"Some data here \"stuff\" some more.","AnswerToEverything":42,"Other":71,"Name":"Joe Doe"}"""
\ "вещи \" вызывают сбой синтаксического анализатора.
Я пытался использовать String.replace(/\\"/, "")
и несколько других комбинаций, чтобы удалить \ ", но он либо ничего не делает, либо удаляет все кавычки из строки.
Этот пост говорит мне, что мне нужно использовать 5 слешей: \\\\\"
, чтобы заставить его работать в Java, но он не работает в Groovy.
Редактировать: Этот тест должен пройти, чтобы он заработал:
str = """foo \"foobar\" bar"""
assert str.replace("""\\\"""", "") == "foo foobar bar"
С помощью приведенного выше регулярного выражения оно не работает.
Какие-нибудь советы?