Полезно, если вы пытаетесь отобразить индикатор выполнения во время страницы, на обработку которой требуется некоторое время. Поскольку PHP-код не является многопоточным, это невозможно сделать, если обработка приостановлена, выполняя функцию 1.
-121--1420498-Предоставьте им клиентский «ключ» и попросите программное обеспечение задать небольшой сервлет на вашем веб-сервере, является ли продукт действительным в настоящее время для клиента с этим ключом.
-121--4716471-Этого и копания в википедии для связанных статей , вероятно, будет достаточно.
Я бы считал, что выполнение этой тяжной задачи является частью миграции для использования Friendly_id. Конечно, вы создали таблицы, но вы еще не закончены! Вы все еще должны выполнять некоторые обновления данных, прежде чем вы по-настоящему мигрируете.
Позвоните за задачу грабли из вашей миграции. Это обновит существующие данные, а новые записи будут обрабатываться вашей логикой приложения в будущем.
-121--4435260-Поскольку входной отформатирован аналогично HTML , то, вероятно, что ваши данные лучше всего представлены с использованием древовидной структуры, а также, скорее всего, что это XML или аналогично XML.
Если это так, я предлагаю максимальный способ анализа вашего файла - использовать анализатор XML.
Вот некоторые ресурсы, которые вы можете найти полезным:
HTH
Есть причина, по которой все предполагают, что вы говорите о XML: изобретение запатентованного текстового формата требуется очень прочно Обоснование перед лицом зрелости и простота наличия анализатора XML.
И ваш вопрос указывает на то, что у вас очень мало предварительных знаний о парсерах (в противном случае вы будете писать ANTLR или Javacc Грамматика вместо того, чтобы задавать этот вопрос) - который является еще одним сильный аргумент против качения вашего собственного, кроме как опыт обучения.
Если документ является действительным XML, то любой другой ответ будет работать. Если это не так, вы должны быть в Lex .
Я думаю, что Java.util.scanner поможет вам. Посмотрите на http://java.sun.com/javase/6/docs/api/java/util/scanner.html
В зависимости от того, насколько сложна ваша "схема", регулярное выражение может быть тем, чего вы хотите. Если есть много вложенных выражений, то, возможно, проще всего конвертировать их в XML или JSON и использовать предварительно собранный парсер.
Люди правы в том, что стандартные форматы являются наилучшей практикой, но давайте отложим это.
Предполагая, что приведенный вами пример репрезентативен, задача довольно тривиальна.
Отображается строка с начальным маркером, демаркированным пробелом двоеточия, а затем список разделенных запятыми значений. Разделите сначала двоеточие, а затем используйте split () на детали справа. Обработка кавычек тоже тривиальна.
Я настоятельно рекомендую не изобретать колесо и использовать существующее решение, такое как Flatworm , FixedFormat4j или jffp , которые могут всеми. Разделенные значения файлов (лично, я рекомендую Flatworm).
Вы можете использовать Neko HTML Parser в некоторой степени. Это зависит от того, как он обрабатывает нестандартный HTML.
Если XML действителен, я лично предпочитаю использовать http://www.xom.nu просто потому, что он имеет хорошую модель DOM. Однако, как уже отмечалось, в J2SE есть парсеры.
вы должны смотреть на ANTLR, даже если вы хотите написать парсер самостоятельно, ANTLR является отличной альтернативой. Или, по крайней мере, посмотрите на YAML
После просмотра вашего примера ввода, я не вижу никакого сходства с HTML или XML:
-barfoob: boobs, foob, "foo bar"
Если это то, что вы хотите разобрать, у меня есть альтернативное предложение, использовать парсер свойств Java (поставляется со стандартным Java), а затем разобрать оставшуюся часть каждой строки, используя ваш собственный пользовательский код. Вам нужно будет несколько рефакторить ваш формат, чтобы это работало, так что все зависит от вас. Свойства
barfoob=boobs, foob, "foo bar"
Java смогут вернуть вам barfoob
в качестве имени свойства, а boobs, foob, "foo bar"
в качестве значения свойства. Именно здесь вы можете использовать свой пользовательский код для разделения значения свойства на boobs
, foob
и foo bar
.