У меня есть большая строка (длина 1116902 символов), которую я хочу обработать с помощью регулярного выражения (довольно простой). Я получаю ответ от мыльного сервера, который закодирован в base64. Поэтому я просто получаю результат между соответствующими тегами xml и затем декодирую ответ.Есть ли ограничение длины при использовании метода замены строки?
Это работает для небольшого запроса. Но когда я получаю большой ответ назад, функция обратного вызова метода replace()
никогда не вызывается. Я попытался проверить строку на веб-сайте regex101 и найти результат. Поэтому я задаюсь вопросом, есть ли ограничение в моем движке JavaScript. Я работаю над Wakanda Server V10, которые используют Webkit в качестве механизма JavaScript. Я не могу предоставить строку, потому что она содержит некоторую корпоративную информацию.
Вот мое регулярное выражение: /xsd:base64Binary">((.|\n)*?)<\/responseData>/
я учил это может быть специальный символ, который не входит в ((.|\n)*?)
группу. Но тогда почему regex101 узнает результат (может быть, это движок JavaScript)
Может быть, кто-нибудь может мне помочь?
Благодаря
'(. | \ N) *' вызывает столько отскоков, что двигатель быстро перерастает в ** катастрофический обратный отсчет **. С '(. | \ N) *?' Может возникнуть ошибка с большими строками, где конечный разделитель не может быть найден или слишком далеко от начального разделителя (аналогичная проблема). При анализе XML или HTML используйте соответствующие соответствующие синтаксические анализаторы вместо регулярного выражения. –
Итак, как мне это сделать? Если я использую ony '. *', Он не будет проходить через линии. Есть ли у вас какие-либо предложения, как поймать ответ base64 внутри моей структуры xml? – Ganbin
Итак, это XML. Используйте XML-парсер, вот [пример разбора строки в дереве XML и получение значения атрибута] (http://stackoverflow.com/questions/32497417/how-to-make-regex-in-node-js- вернуться-на-первых синхронизма-группы/32499583 # 32499583). Просто измените его немного, чтобы получить значение элемента. Существуют и другие способы анализа XML, а также другие комментарии здесь. –