が、私は次の正規表現使用して、すべての.htmlファイル内のすべての一致を見つけることができるようにしたいと思います。そして、Apache Ant:特定の正規表現のすべてのファイルを検索し、その一致をファイルに印刷できますか? Antのbuild.xmlの中
("|')((?!http://|#|mailto:|&|/)([^#\n\s\."])+?\.([^#\n\s"])+?)\1
を、私は、ファイル内の\ 2のものと一致するものを一覧表示したいです。これは可能ですか?
最終結果、おかげで@bakoyaroします
<echo message="Collecting appcache files" />
<concat destFile="your_output_file">
<fileset dir="./${dir.publish}">
<include name="**/*.html"/>
</fileset>
<filterchain>
<linecontainsregexp>
<regexp pattern="(.)*?("|')((?!http://|\?|#|mailto:|\1)([^#\n\s\."'?])+?\.([^#\n\s"'?])+?)\2" />
</linecontainsregexp>
<tokenfilter>
<replaceregex pattern="(.)*?("|')((?!http://|\?|#|mailto:|\1)([^#\n\s\."'?])+?\.([^#\n\s"'?])+?)\2" flags="g" replace="\1\2\3\2${line.separator}" />
</tokenfilter>
<linecontainsregexp>
<regexp pattern="(.)*?("|')((?!http://|\?|#|mailto:|\1)([^#\n\s\."'?])+?\.([^#\n\s"'?])+?)\2" />
</linecontainsregexp>
<tokenfilter>
<replaceregex pattern="(.)*?("|')((?!http://|\?|#|mailto:|\1)([^#\n\s\."'?])+?\.([^#\n\s"'?])+?)\2" flags="g" replace="\3" />
</tokenfilter>
<linecontainsregexp>
<regexp pattern="((?!http://|\?|#|mailto:|\1)([^#\n\s\."'?])+?\.([^#\n\s"'?])+?)" />
</linecontainsregexp>
</filterchain>
</concat>
これは実際に一致トークンを「取得」して出力することができますか? –
これは、concatタスクで指定されたdestFileに一致を出力します。または、destFile属性を指定しないでconcatを使用すると、コンソールに出力されます。ソリューションがすべての要素(concat、filterchain、linecontainsregexp、tokenfilter)を使用していたので、これは役に立ちました。 – sudocode
はい、明らかに間違った答えを確認しました。私は本当にSOがそれらをいかに動かすか嫌いです。 –