1

悲しいことに静的な URL がたくさんあります。それらを変更するには、ある種のアプリケーションまたはスクリプトを使用する必要があります。

これが私がやろうとしていることの例です:

Change:
<td class="SELECTX"><strong>Text example 1 <a href=""></a>Text Example 2 </strong></td>

To:
<td class="SELECTX"><strong> <a href=""></a>Text example 1 Text Example 2 </strong></td>

一度にすべてのファイルでこれを変更する方法が欲しいのですが、それができない場合は、手動でカット アンド ペーストすることなく、少なくとも 1 つのファイルのすべての URL を変更できる方法が必要です。

3時間以上検索して検索しましたが、何も見つかりませんでした...誰かが助けてくれることを願っています。

<strong編集: 基本的に、との間のテキスト/文字列を見つけようとしてい<a href=ます。どれが今より前に来るだろう"Text example 1"""></a>"Text Example 2"

4

3 に答える 3

0

2 つの (または ) タグの間の文字列を見つけるには、おそらく正規表現を使用してファイル内のどこに文字列があるかを見つけ、スクリプトで各文字列/行を処理します。

次に、おそらく各行について、交換が必要な文字列のセクションのインデックスを提供する開始タグと終了タグを見つけ、開始タグのインデックスに沿って2つの部分を交換します。

于 2012-11-07T03:29:29.697 に答える
0

これがあなたのニーズにぴったり合っていることを確認してください

    String s = "<td class=\"SELECTX\"><strong>Text example 1 <a href=\"\"></a>Text Example 2 </strong></td>";
    s = s.replace("<a href=\"\"></a>", " ").replace("<strong>", "<strong><a href=\"\"></a>");
于 2012-11-07T03:37:37.337 に答える
0
#!/bin/bash 
while read line
do
     x=`echo $line |grep -o "strong>.*<a" | sed 's/strong>//' |sed 's/<a//'`
     y=`echo $line |grep -o "a>.*</strong" | sed 's/a>//' |sed 's/<\/strong//'`
     z=`echo $line| sed 's/'"$x"'//' |sed 's/'"$y"'/'"$x $y"'/'`
    echo $z
done < a.txt

このスクリプトの出力を別のファイルに追加すると、それが期待される出力になります。for ループを配置して、そのディレクトリ内のすべてのファイルを反復処理できます。

これを Java で複製する場合のロジックは次のとおりです。

文字列 X = "テキスト例 1"

文字列 Y = "テキスト例 2"

文字列 Z = X+(連結)+ Y

「テキスト例 1」を「 」に置き換えます

「テキスト例 2」を文字列 Z に置き換えます。

于 2012-11-07T03:41:09.810 に答える