置き換える属性の複数の値を一致させたい。たとえばant buildscriptのhtmlでの複数の属性値の一致
<div class="div h1 full-width"></div>
div、h1、およびfull-widthを別個の一致として生成する必要があります。 私はクラスの前にこれをしたいと思います。だからではなく、私が持っているSOFAR正規表現のdiv H1全幅それがされなければならない事前divの前全幅前H1
の
(?<=class=["'])(\b-?[_a-zA-Z]+[_a-zA-Z0-9-]*\b)+
これが唯一のファーストクラスと一致します。このパターンは一致するはずの唯一のものであるため、これはオフコースです:(私はlookbehindをclass = "もっと多く取るようにしようとしましたが、すべてを取り、何も残さずに置き換えます。 パターンを作りたい
すべてのファイルを処理し、class = "value1 value2 value3"を接頭辞で置き換えたAnt buildscriptでこれを実行したいと思います。 cssファイルが、あなたがたのHTML内のクラスを交換する手間がトリッキーたくさんしているようだ
それはAntのbuildscriptあるJava regexp packageパターンを処理するために使用される使用蟻タグは次のとおりです。。。replaceregexp
上記のパターンのアリimplemtentationがある:
<target name="prefix-class" depends="">
<replaceregexp flags="g">
<regexp pattern="(?<=class=['"])(\b-?[_a-zA-Z]+[_a-zA-Z0-9-]*\b)+"/>
<substitution expression=".${prefix}\1"/>
<fileset dir="${dest}"/>
</replaceregexp>
</target>
regexpを処理するツール/言語はありますか? – Chris
更新された質問 –
Mhm ...あなたはn個(またはあなたのケースでは3個)の異なるクラスのエントリとsubstitudeを1つの簡単な正規表現で見つけることはできません。あなたが蟻でこれを行う必要があるなら、私はあなた自身の蟻の仕事を書かなければならないと思う。より良い方法はxsltだろう、あなたはxsltに精通していますか? – Chris