Я ищу регулярное выражение, но не могу найти.Регулярное выражение слишком голодное
Синтаксический текстовый файл, глядя, как этот
<resource name="/_op_sox/Project/Default/ICDocumentation/Evaluation/Allianz/Allianz SE/Eval_01241.txt"
inheritAcls="true">
<bundle name="AZEvaluation">
<property name="End Date">
</property>
<property name="Evaluation Type">
<propertyValue name="RCSA"/>
</property>
</bundle>
</resource>
<resource name="/_op_sox/Project/Default/ICDocumentation/Evaluation/Allianz/Allianz SE/Eval_01481.txt"
inheritAcls="true">
<bundle name="AZEvaluation">
<property name="End Date">
</property>
<property name="Evaluation Type">
<propertyValue name="TRA"/>
</property>
</bundle>
</resource>
<resource name="/_op_sox/Project/Default/ICDocumentation/Evaluation/Allianz/Allianz SE/Eval_01362.txt"
inheritAcls="true">
<bundle name="AZEvaluation">
<property name="End Date">
</property>
<property name="Evaluation Type">
<propertyValue name="RCSA"/>
</property>
</bundle>
</resource>
Мой текущий регулярное выражение соответствует многим.
<resource.+?<propertyValue name="RCSA".+?</resource>
Он соответствует первому тегу ресурса и второй + третьей. Может кто-нибудь изменить регулярное выражение, которое он действительно останавливается на первом </resource>
Я использую этот код Java
Pattern.compile("<resource.+?<propertyValue name=\"RCSA\".+?</resource>",Pattern.MULTILINE | Pattern.DOTALL)
использовать парсер. – YXD
Простой вопрос: почему вы не используете инструменты XML для этого? regexp не подходит для XML или HTML – SergeS
Почему бы не использовать Jsoup? Было бы тривиально найти первый элемент 'resource'. – bdares