2012-05-10 5 views
0

のペアで正規表現/置き換え - 私は、検索のためのXMLファイルを使用しています<ul></ul>

  • のリストを入れて、正規表現と交換 - 実際には、コンポーネントrereplacerを使用して、Joomlaのウェブサイトです。 私は

    </ul> 
    

    xmlファイルとの最後の1が

    ように構築された後の最初の

    <li> 
    

    要素と近いため

    <ul> 
    

    を追加する必要がリストを持っています

    <item> 
        <search><span class="SCompany">([^<]*)</span></search> 
        <replace><div class="text1">$1</div></replace> 
        </item> 
    

    これ。私は正規表現についてのときに私は本当のnoobですので、私はこれにいくつかの助けが必要です。それは

    <ul></ul>? 
    
    +0

    ここに返信しようとしている人は誰でももっと多くのことを知っています。私はかなり簡単にJoomlaの記事の内容を解析するためにsimple_html_domを試してみることができます - 誰でも私にスタートを与えることができますこれのポイント?私はかつてWordpressで何の問題もなしにこれをやったが、Joomlaは私を殺すことになる(柔らかく... :) – user1385890

    答えて

    0

    正規表現のペアに全て

    <li>content</li> 
    

    タグを置くために、可能なXMLファイル内のどのようにされているXML/HTMLを解析するとき、それは難しいですので、多くの場合、良いアイデアではありません構文を追跡します。

    正規表現は、入力が1行で、1行だけの場合は最も強力です。外側にはコンテキストがありません。

    あなたのli要素はすべて同じリストに属し、2つ以上のリストには属していないことをどのように知っていますか? <pre>タグ内のli要素とそのコメントを無視するコメントを検出するにはどうすればよいですか?

    代わりにxml-parserを探します。

    +0

    私は単純なhtml-domで作業しようとした。以前はWordpressを使っていましたが、今はJoomlaを使用するのが難しくなっています(私の意見でしかないかもしれません)... Joomlaでコンテンツをロードする方法は一切分かりません。 – user1385890

    +0

    私はもっと強い言葉で同じことを言うでしょう。決して正規表現を使用してXMLを解析すると、常に後悔します。 –

    +0

    @MichaelKay:いいえ、私は頻繁に正規表現を使用しましたが、決して後悔しません。 HTMLが生成されることが多いので、開始タグと終了タグの間に改行がない場合、明日はないかもしれません。もちろん、HTMLは変更されるかもしれませんが、あなたのxmlstarlet-codeなどが適合するかどうかは保証されません。そして時々私は自分自身をHTMLのソースにしているので、私が変更すれば、私はいくつかのアサーションに依存するスクリプトを持っていることを知っています。しかし、私は頻繁にhtmlを操作することはありません。私はsedを使い慣れているので、新しいことを学ぶための投資はうまくいかないかもしれません。最後のポイント:私はしばしば助言を参照してください:... –