2011-01-11 29 views
4

"someString"(複雑な正規表現で定義されている)のすべてのインスタンスを<a href="http://domain.com/$1">$1</a>に置き換えるブラウザプラグインで作業しています。これは一般的に体のinnerHTMLのグローバル置換を行うだけでOKです。しかし、<script>タグ内の "someString"(つまり、JS変数または他のJS参照)を見つけ(そして置き換えて)ページを分割します。また、 "someString"が既にアンカーの一部である場合、それは中断されます。<script>または<a>タグ

基本的に、<script></script>または<a></a>タグセット内に収まらない限り、「someString」のすべてのインスタンスでグローバル置換を実行したいと考えています。

基本的に私が今持っているものは次のとおりです。

var body = document.getElementsByTagName('body')[0].innerHTML; 
body = body.replace(/(someString)/gi, '<a href="http://domain.com/$1">$1</a>'); 
document.getElementsByTagName('body')[0].innerHTML = body; 

しかし、明らかにそれは十分ではありません。私は数時間前から苦労してきました。ここでの答え(HTMLで正規表現を使用しないことを主張する頑固なものを含む)をすべて読んでいるので、これを行う方法についての提案をしています。私はストレートJSを使用したいが、必要に応じてjQueryを使用することができます。

編集 - サンプルHTML:その場合は

<body> 
    someString 
    <script type="text/javascript"> 
    var someString = 'blah'; 
    console.log(someString); 
    </script> 
    <a href="someString.html">someString</a> 
</body> 

、 "someString" の唯一の非常に最初のインスタンスを交換する必要があります。

+2

なぜ正規表現タグですか?あなたがすでに認めているように、それは正規表現の仕事ではありません。 –

+0

"someString"は、私がマッチを行うために必要な複雑な正規表現によって定義されています。私はそれの周りを回ることはできません。潜在的にトラバーサル/親ノード型は正規表現を使わずに集めることができますが、実際の文字列のマッチングが行われる限りは選択肢がありません。 – ggutenberg

+0

これをページ上のテキスト内で置き換えるだけですか? – Orbling

答えて

2

あなたのニーズを満たしているかどうかを確認してください(IE 8とChromeでテスト済み)。

<script src="jquery-1.4.4.js" type="text/javascript"></script> 
<script> 
    var pattern = /(someString)/gi; 
    var replacement = "<a href=\"http://domain.com/$1\">$1</a>"; 

    $(function() { 
    $("body :not(a,script)") 
     .contents() 
     .filter(function() { 
     return this.nodeType == 3 && this.nodeValue.search(pattern) != -1; 
     }) 
     .each(function() { 
     var span = document.createElement("span"); 
     span.innerHTML = "&nbsp;" + $.trim(this.nodeValue.replace(pattern, replacement)); 
     this.parentNode.insertBefore(span, this); 
     this.parentNode.removeChild(this); 
     }); 
    }); 
</script> 

コードが<anchor>または<script>ブロックに含まれていない文書の<body>内のすべてのテキストノードを検索し、検索パターンを含むようにjQueryを使用しています。それらが見つかると、ターゲットノードの変更された内容を含むスパンが注入され、古いテキストノードが削除されます。

私が見た唯一の問題は、IE 8はChromeとは異なる方法で空白を含むテキストノードを処理することでした。したがって置換によって先行スペースが失われることがあるため、正規表現の置き換えを含むテキストの前に非改行スペースを挿入します。

+0

これは素晴らしいです。私が変更しなければならなかったのは、タグ内の項目(div、div、等。)。確かに私の例はこれを具体的に挙げていませんでした。 – ggutenberg

1

私はあなたがこれを聞きたくないと知っていますが、これは正規表現の仕事のようには聞こえません。正規表現は、複雑で判読不能になる前に、ネガティブマッチをうまくやっていません。

おそらく、この正規表現は、しかし十分に近いかもしれません:それはわたってるしきあるsomeStringの任意のインスタンス>と<をキャプチャ

/>[^<]*(someString)[^<]*</ 

2

まあ、あなたはMozillaでXPathを使うことができます(FireFox用のプラグインを書いていると仮定します)。電話はdocument.evaluateです。あなたはjQueryのを使用しない場合は、別のアイデアがある

var callback = function(node) { 
    var text = node.nodeValue; 
    text = text.replace(/(someString)/gi, '<a href="http://domain.com/$1">$1</a>'); 
    var div = document.createElement('div'); 
    div.innerHTML = text; 
    for (var i = 0, l = div.childNodes.length; i < l; i++) { 
     node.parentNode.insertBefore(div.childNodes[i], node); 
    } 
    node.parentNode.removeChild(node); 
}; 
var nodes = []; 
//cache the tree since we want to modify it as we iterate 
var node = matches.iterateNext(); 
while (node) { 
    nodes.push(node); 
    node = matches.iterateNext(); 
} 
for (var key = 0, length = nodes.length; key < length; key++) { 
    node = nodes[key]; 
    // Check for a Text node 
    if (node.nodeType == Node.TEXT_NODE) { 
     callback(node); 
    } else { 
     for (var i = 0, l = node.childNodes.length; i < l; i++) { 
      var child = node.childNodes[i]; 
      if (child.nodeType == Node.TEXT_NODE) { 
       callback(child); 
      } 
     } 
    } 
} 
+0

これは非常に有望ですが、replaceChild()呼び出しについてはあなたが正しいと思います。 'NOT_FOUND_ERR:DOM例外8:存在しないコンテキストでノードを参照しようとしました.'また、' match'のすべてのインスタンスを 'node'と置き換えなければなりません(私はそれがあなたが行っていたものと仮定しています。そうでなければ 'node.nodeType'にエラーを投げます)。 – ggutenberg

+0

@dosboy:私は両方の問題の解決策を編集しました( 'match'を' node'と改名しました)。これでバッチ処理ではなく 'div'の子を手動でdomにコピーします。 – ircmaxell

+0

進捗状況私がコールバックを作成せず、代わりに 'console.log(node)'を実行すると、non-aノードとnon-scriptノードの内容を出力しています。 1つのノード( ' ')の内容が' node = matches.iterateNext(); ':' INVALID_STATE_ERR:DOM Exception 11:オブジェクトを使用しようとしました。私はまた、xpathExpressionに 'and not(name()= 'head')'を追加しようとしましたが、何の違いも見られませんでした。これは、XPathへの私の最初の入門です。 t tell :) – <span class="text-secondary"> <small> <a rel="noopener" target="_blank" href="https://stackoverflow.com/users/177943/">ggutenberg</a></span> <span></span> </small> </span> </p> </div> </div> </div> </div> </div> </article> <article class="board-top-1 padding-top-10"> <div class="post-col vote-info"> <span class="count">1<i class="fa fa-thumbs-up"></i></span> </div> <div class="post-offset"> <div class="answer fmt"> <p>:またはあなたが(そこに少数がある)それを行うために、XPathライブラリを使用することができます...</p> <pre><code class="prettyprint-override">var matches = document.evaluate( '//*[not(name() = "a") and not(name() = "script") and contains(., "string")]', document, null, XPathResult.UNORDERED_NODE_ITERATOR_TYPE null ); </code></pre> <p>そして、コールバック関数を使用して置き換えます:contains疑似セレクタを使うことができます。</p> <pre><code class="prettyprint-override">$('*:contains(someString)').each(function(i) { var markup = $(this).html(); // modify markup to insert anchor tag $(this).html(markup) }); </code></pre> <p>これは、テキストに 'someString'が含まれているすべてのDOMアイテムを取得します。私はそれが<code class="prettyprint-override"><script></code>タグを横断するか、あなたが良いはずだと思いません。</p> </div> <div class="post-info"> <div class="post-meta row"> <p class="text-secondary col-lg-6"> <span class="source"> <a rel="noopener" target="_blank" href="https://stackoverflow.com/q/4661103">出典</a> </span> </p> <p class="text-secondary col-lg-6"> <span class="float-right date"> <span>2011-01-11 18:17:34</span> <a rel="noopener" target="_blank" href="https://stackoverflow.com/users/86421/">Jeff</a></span> </p> <p class="col-12"></p> <p class="col-12"></p></div> </div> <!-- comments --> <div class="comments"> <div itemprop="comment" class="post-comment"> <div class="row"> <div class="col-lg-1"><span class="text-secondary">+0</span></div> <div class="col-lg-11"> <p class="commenttext">私はこれを試しましたが、contains()は正規表現をサポートしていません...または、私がとにかく必要な正規表現に対しては十分にサポートしていません。 – <span class="text-secondary"> <small> <a rel="noopener" target="_blank" href="https://stackoverflow.com/users/177943/">ggutenberg</a></span> <span></span> </small> </span> </p> </div> </div> </div> <div itemprop="comment" class="post-comment"> <div class="row"> <div class="col-lg-1"><span class="text-secondary">+0</span></div> <div class="col-lg-11"> <p class="commenttext">どのような正規表現を入れようとしていますか?リテラルのsomeString値をセレクタに置くだけでよく、それにマッチさせるために正規表現のサポートが必要ないように思えます。 – <span class="text-secondary"> <small> <a rel="noopener" target="_blank" href="https://stackoverflow.com/users/86421/">Jeff</a></span> <span></span> </small> </span> </p> </div> </div> </div> <div itemprop="comment" class="post-comment"> <div class="row"> <div class="col-lg-1"><span class="text-secondary">+0</span></div> <div class="col-lg-11"> <p class="commenttext">'(someString)'は私が質問で使用した例です。実際の正規表現(私は継承し、リバースエンジニアリングをしたくない)は '/ \ $((?:[0-9] +(?= [az])| (?:[a-z0-9] | [\ _ \。\ - \:])(?![ -z0-9] +)/ '混乱を避けるために質問から外しました。 – <span class="text-secondary"> <small> <a rel="noopener" target="_blank" href="https://stackoverflow.com/users/177943/">ggutenberg</a></span> <span></span> </small> </span> </p> </div> </div> </div> </div> </div> </article> <div> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-6208739752673518" data-ad-slot="1038284119" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> <article class="board-top-1 padding-top-10"> <div class="post-col vote-info"> <span class="count">1<i class="fa fa-thumbs-up"></i></span> </div> <div class="post-offset"> <div class="answer fmt"> <p>次の操作を試みることができる:</p> <pre><code class="prettyprint-override">/(someString)(?![^<]*?(<\/a>|<\/script>))/ </code></pre> <p>私はすべてのschenarioをテストしていないが、基本的に<strong><em>someString</em></strong>、次の次のオープニングブラケットを探すために、負の先読みを使用して、その場合はさブラケットはアンカーまたはスクリプト終了タグの一部ですが、一致しません。</p> <p>あなたの例はこの<a href="http://www.jsfiddle.net/LG2Bg/" rel="nofollow">fiddle</a>で動作するようですが、確かにすべての可能性をカバーしているわけではありません。 <code class="prettyprint-override"><a></a></code>のinnerHTMLに<code class="prettyprint-override"><b></code>または<code class="prettyprint-override"><span></code>のようなタグが含まれている場合や、スクリプトタグのコードがHTMLを生成している場合(タグ付きの文字列が含まれている場合)、より複雑なものが必要になります。</p> </div> <div class="post-info"> <div class="post-meta row"> <p class="text-secondary col-lg-6"> <span class="source"> <a rel="noopener" target="_blank" href="https://stackoverflow.com/q/4670141">出典</a> </span> </p> <p class="text-secondary col-lg-6"> <span class="float-right date"> <span>2011-01-12 14:52:58</span> </p> <p class="col-12"></p> <p class="col-12"></p></div> </div> </div> </article> </div> <div class="clearfix"> </div> <div class="relative-box"> <div class="relative">関連する問題</div> <ul class="relative_list"> <li> 1. <a href="http://ja.uwenku.com/question/p-clqrhaux-cg.html" target="_blank" title="または<object>タグ"> または<object>タグ </a> </li> <li> 2. <a href="http://ja.uwenku.com/question/p-riyimbxh-bn.html" target="_blank" title="Heredoc <<<または<<?"> Heredoc <<<または<<? </a> </li> <li> 3. <a href="http://ja.uwenku.com/question/p-alcguvrm-cu.html" target="_blank" title="PHPは<h1></h1>タグ"> PHPは<h1></h1>タグ </a> </li> <li> 4. <a href="http://ja.uwenku.com/question/p-tipyaidd-gw.html" target="_blank" title="<img>または<img/>のタグを除いたすべてのhtmlタグを削除します。"> <img>または<img/>のタグを除いたすべてのhtmlタグを削除します。 </a> </li> <li> 5. <a href="http://ja.uwenku.com/question/p-vnsqfmjd-or.html" target="_blank" title="[HTML] <fieldset>タグは<form>タグここ"> [HTML] <fieldset>タグは<form>タグここ </a> </li> <li> 6. <a href="http://ja.uwenku.com/question/p-axtulbva-dk.html" target="_blank" title="<object>タグ"> <object>タグ </a> </li> <li> 7. <a href="http://ja.uwenku.com/question/p-ewzbiymz-gz.html" target="_blank" title="<br>タグ"> <br>タグ </a> </li> <li> 8. <a href="http://ja.uwenku.com/question/p-kjfnetjs-oy.html" target="_blank" title="<a>タグ"> <a>タグ </a> </li> <li> 9. <a href="http://ja.uwenku.com/question/p-visgzgqj-eo.html" target="_blank" title="<a>タグ"> <a>タグ </a> </li> <li> 10. <a href="http://ja.uwenku.com/question/p-xwyrocah-dg.html" target="_blank" title="<c:import>タグ"> <c:import>タグ </a> </li> <div> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:block; text-align:center;" data-ad-layout="in-article" data-ad-format="fluid" data-ad-client="ca-pub-6208739752673518" data-ad-slot="4606349252"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> <li> 11. <a href="http://ja.uwenku.com/question/p-gdsxnmkq-dy.html" target="_blank" title="<img>タグ"> <img>タグ </a> </li> <li> 12. <a href="http://ja.uwenku.com/question/p-wxnsnibs-dn.html" target="_blank" title="<label>タグ"> <label>タグ </a> </li> <li> 13. <a href="http://ja.uwenku.com/question/p-qxnqiaur-gt.html" target="_blank" title="<a>タグ"> <a>タグ </a> </li> <li> 14. <a href="http://ja.uwenku.com/question/p-znlpilda-kh.html" target="_blank" title="<circle>タグ"> <circle>タグ </a> </li> <li> 15. <a href="http://ja.uwenku.com/question/p-cvclkwka-go.html" target="_blank" title="<input>タグ"> <input>タグ </a> </li> <li> 16. <a href="http://ja.uwenku.com/question/p-ruailgqa-ey.html" target="_blank" title="タグ<label>はなぜタグを動作しません<input>"> タグ<label>はなぜタグを動作しません<input> </a> </li> <li> 17. <a href="http://ja.uwenku.com/question/p-pbgxdcwh-kv.html" target="_blank" title="<type>タグの意味は、<dependency>タグ内にありますか?"> <type>タグの意味は、<dependency>タグ内にありますか? </a> </li> <li> 18. <a href="http://ja.uwenku.com/question/p-bfvlpetg-np.html" target="_blank" title="<br>、<BR>、<br +attribute>タグ<br/>"> <br>、<BR>、<br +attribute>タグ<br/> </a> </li> <li> 19. <a href="http://ja.uwenku.com/question/p-mdypmmek-oh.html" target="_blank" title="CKEditorはコンテンツを削除します<title></title>タグ"> CKEditorはコンテンツを削除します<title></title>タグ </a> </li> <li> 20. <a href="http://ja.uwenku.com/question/p-tykbqwrb-ou.html" target="_blank" title="HTMLは<script>タグに"> HTMLは<script>タグに </a> </li> <li> 21. <a href="http://ja.uwenku.com/question/p-apnypxvg-kk.html" target="_blank" title="私は<style>タグ"> 私は<style>タグ </a> </li> <li> 22. <a href="http://ja.uwenku.com/question/p-dazwvykr-ck.html" target="_blank" title="<meta name = "title">タグの相違点<title></title>タグ"> <meta name = "title">タグの相違点<title></title>タグ </a> </li> <li> 23. <a href="http://ja.uwenku.com/question/p-tnkuhfdv-dm.html" target="_blank" title="SEO:<button>対<a> HTMLタグ"> SEO:<button>対<a> HTMLタグ </a> </li> <li> 24. <a href="http://ja.uwenku.com/question/p-gjfjgtaf-ds.html" target="_blank" title="<img>対<image> HTMLのタグ"> <img>対<image> HTMLのタグ </a> </li> <li> 25. <a href="http://ja.uwenku.com/question/p-pjzaknrt-nw.html" target="_blank" title="カスタムビュー<merge>と<layout>タグ"> カスタムビュー<merge>と<layout>タグ </a> </li> <li> 26. <a href="http://ja.uwenku.com/question/p-njhemtka-cm.html" target="_blank" title="struts2 <s:select...>タグ"> struts2 <s:select...>タグ </a> </li> <li> 27. <a href="http://ja.uwenku.com/question/p-nsavurpb-hh.html" target="_blank" title="約<nav>タグ"> 約<nav>タグ </a> </li> <li> 28. <a href="http://ja.uwenku.com/question/p-wwfqwaew-ek.html" target="_blank" title="CSS角度タグ<"> CSS角度タグ< </a> </li> <li> 29. <a href="http://ja.uwenku.com/question/p-gdqmkylm-ge.html" target="_blank" title="ラップライン<input>タグ"> ラップライン<input>タグ </a> </li> <li> 30. <a href="http://ja.uwenku.com/question/p-olglkott-bu.html" target="_blank" title="Php <? WAMPのタグ"> Php <? WAMPのタグ </a> </li> </ul> </div> <div> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-6208739752673518" data-ad-slot="1575177025"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> <div class="padding-top-10"></div> </div> </div> <script type="text/javascript" src="http://img.uwenku.com/uwenku/script/side.js?t=1644592048742"></script> <script type="text/javascript" src="http://img.uwenku.com/uwenku/plugin/highlight/highlight.pack.js"></script> <link href="http://img.uwenku.com/uwenku/plugin/highlight/styles/docco.css" media="screen" rel="stylesheet" type="text/css" /> <script type="text/javascript"> $('pre').each(function(i, e) { hljs.highlightBlock(e, "<span class='indent'> </span>", false) }); </script> <div class="col-lg-3 col-md-4 col-sm-5"> <div id="rightTop"> <div class="row"> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-6208739752673518" data-ad-slot="5415218910" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div> <div class="row sidebar panel panel-default"> <div class="panel-heading font-bold"> 最新の質問 </div> <div class="m-b-sm m-t-sm clearfix"> <ul class="side_article_list"> <li class="side_article_list_item"> 1. <a href="http://ja.uwenku.com/question/p-hrkqlkqs-hc.html" target="_blank" title="pycharm_helpersのリポジトリがあります"> pycharm_helpersのリポジトリがあります </a> </li> <li class="side_article_list_item"> 2. <a href="http://ja.uwenku.com/question/p-zdaxuptm-hg.html" target="_blank" title="check_box_outlineアイコンには余分なスペースが必要です"> check_box_outlineアイコンには余分なスペースが必要です </a> </li> <li class="side_article_list_item"> 3. <a href="http://ja.uwenku.com/question/p-dfqawqgn-go.html" target="_blank" title="Nodejs - 別のファイルのSQLクエリ?"> Nodejs - 別のファイルのSQLクエリ? </a> </li> <li class="side_article_list_item"> 4. <a href="http://ja.uwenku.com/question/p-zrwfiplw-gu.html" target="_blank" title="Androidのスプラッシュ画面Firebase同期"> Androidのスプラッシュ画面Firebase同期 </a> </li> <li class="side_article_list_item"> 5. <a href="http://ja.uwenku.com/question/p-vbryfmbw-gm.html" target="_blank" title="H2計算された列式で自動的に行の使用カウント列を維持する"> H2計算された列式で自動的に行の使用カウント列を維持する </a> </li> <li class="side_article_list_item"> 6. <a href="http://ja.uwenku.com/question/p-xndnkeao-gt.html" target="_blank" title="JSP Javascriptはforeach内の隠れた入力からIDを取得するJSTL"> JSP Javascriptはforeach内の隠れた入力からIDを取得するJSTL </a> </li> <li class="side_article_list_item"> 7. <a href="http://ja.uwenku.com/question/p-mmtojxoe-gq.html" target="_blank" title="複雑なwsdlを使用するためのビルド配列 - PHP"> 複雑なwsdlを使用するためのビルド配列 - PHP </a> </li> <li class="side_article_list_item"> 8. <a href="http://ja.uwenku.com/question/p-vdxlomwf-gz.html" target="_blank" title="角度テンプレートの数学的操作"> 角度テンプレートの数学的操作 </a> </li> <li class="side_article_list_item"> 9. <a href="http://ja.uwenku.com/question/p-pnpivrvd-gc.html" target="_blank" title="プライマリSSL再ルーティングHTTPアドオン"> プライマリSSL再ルーティングHTTPアドオン </a> </li> <li class="side_article_list_item"> 10. <a href="http://ja.uwenku.com/question/p-sjgamdva-pq.html" target="_blank" title="異なるデバイスサイズのCSS"> 異なるデバイスサイズのCSS </a> </li> </ul> </div> </div> </div> <p class="article-nav-bar"></p> <div class="row sidebar article-nav"> <div class="row box_white visible-sm visible-md visible-lg margin-zero"> <div class="top"> <h3 class="title"><i class="glyphicon glyphicon-th-list"></i> 関連する問題</h3> </div> <div class="article-relative-content"> <ul class="side_article_list"> <li class="side_article_list_item"> 1. <a href="http://ja.uwenku.com/question/p-clqrhaux-cg.html" target="_blank" title="または<object>タグ"> または<object>タグ </a> </li> <li class="side_article_list_item"> 2. <a href="http://ja.uwenku.com/question/p-riyimbxh-bn.html" target="_blank" title="Heredoc <<<または<<?"> Heredoc <<<または<<? </a> </li> <li class="side_article_list_item"> 3. <a href="http://ja.uwenku.com/question/p-alcguvrm-cu.html" target="_blank" title="PHPは<h1></h1>タグ"> PHPは<h1></h1>タグ </a> </li> <li class="side_article_list_item"> 4. <a href="http://ja.uwenku.com/question/p-tipyaidd-gw.html" target="_blank" title="<img>または<img/>のタグを除いたすべてのhtmlタグを削除します。"> <img>または<img/>のタグを除いたすべてのhtmlタグを削除します。 </a> </li> <li class="side_article_list_item"> 5. <a href="http://ja.uwenku.com/question/p-vnsqfmjd-or.html" target="_blank" title="[HTML] <fieldset>タグは<form>タグここ"> [HTML] <fieldset>タグは<form>タグここ </a> </li> <li class="side_article_list_item"> 6. <a href="http://ja.uwenku.com/question/p-axtulbva-dk.html" target="_blank" title="<object>タグ"> <object>タグ </a> </li> <li class="side_article_list_item"> 7. <a href="http://ja.uwenku.com/question/p-ewzbiymz-gz.html" target="_blank" title="<br>タグ"> <br>タグ </a> </li> <li class="side_article_list_item"> 8. <a href="http://ja.uwenku.com/question/p-kjfnetjs-oy.html" target="_blank" title="<a>タグ"> <a>タグ </a> </li> <li class="side_article_list_item"> 9. <a href="http://ja.uwenku.com/question/p-visgzgqj-eo.html" target="_blank" title="<a>タグ"> <a>タグ </a> </li> <li class="side_article_list_item"> 10. <a href="http://ja.uwenku.com/question/p-xwyrocah-dg.html" target="_blank" title="<c:import>タグ"> <c:import>タグ </a> </li> </ul> </div> </div> </div> </div> </div> </div> </div><!-- wrap end--> <!-- footer --> <footer id="footer"> <div class="bg-simple lt"> <div class="container"> <div class="row padder-v m-t"> <div class="col-xs-8"> <ul class="list-inline"> <li><a href="http://ja.uwenku.com/contact">お問い合わせ</a></li> <li>© 2020 JA.UWENKU.COM</li> <li><a target="_blank" href="https://beian.miit.gov.cn/">沪ICP备13005482号-4</a></li> <li><script type="text/javascript" src="https://v1.cnzz.com/z_stat.php?id=1280101193&web_id=1280101193"></script></li> <li><a href="http://www.uwenku.com/" target="_blank" title="优文库">简体中文</a></li> <li><a href="http://hk.uwenku.com/" target="_blank" title="優文庫">繁體中文</a></li> <li><a href="http://ru.uwenku.com/" target="_blank" title="поле вопросов и ответов">Русский</a></li> <li><a href="http://de.uwenku.com/" target="_blank" title="Frage - und - antwort - Park">Deutsch</a></li> <li><a href="http://es.uwenku.com/" target="_blank" title="Preguntas y respuestas">Español</a></li> <li><a href="http://hi.uwenku.com/" target="_blank" title="कार्यक्रम प्रश्न और उत्तर पार्क">हिन्दी</a></li> <li><a href="http://it.uwenku.com/" target="_blank" title="IL Programma di chiedere Park">Italiano</a></li> <li><a href="http://ja.uwenku.com/" target="_blank" title="プログラム問答園区">日本語</a></li> <li><a href="http://ko.uwenku.com/" target="_blank" title="프로그램 문답 단지">한국어</a></li> <li><a href="http://pl.uwenku.com/" target="_blank" title="program o park">Polski</a></li> <li><a href="http://tr.uwenku.com/" target="_blank" title="Program soru ve cevap parkı">Türkçe</a></li> <li><a href="http://vi.uwenku.com/" target="_blank" title="Đáp ứng viên">Tiếng Việt</a></li> <li><a href="http://fr.uwenku.com/" target="_blank" title="Programme interrogation Park">Française</a></li> </ul> </div> </div> </div> </div> </div> </footer> <!-- / footer --> <script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?f78a970f17b19a79fc477a3378096f29"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> </body> </html>