2017-02-03 10 views
0

データのCSV書き出しを作成するのに忙しく、一部のデータフィールドにHTMLマークアップが含まれています。テキストをHTMLマークアップでフォーマットし、JavaScript内の文字列から不要なテキストを削除します。

私のメソッドに渡された値/データフィールドからすべてのHTMLタグと一部のテキストを取り除き、正しい出力を作成するのが難しいです。

"<a href=\"https://twitter.com/FNBSA\" target=\"_blank\">FNBSA</a>" 

Excelでクリッカブルフィールドを作成する所望の出力(これは以下となります。

この

は、HTMLタグを除去するための私のメソッドに渡される値/文字列の例です。 )ハイパーリンクアドレスにあなたを取る:あなたは気づくでしょう

=HYPERLINK("https://twitter.com/FNBSA","View Media") 

、私はまた、_blank\">と終値の間のテキストを削除したいと思います</a>"、この例では、第2FNBSAである。この値は何でもかまいません。

さまざまな書式設定を試しましたが、正しくできないようです。

これは私がHTMLタグや不要なテキストを除去するための私の方法の面で持っているもの現在:

str = "<a href=\"https://twitter.com/FNBSA\" target=\"_blank\">FNBSA</a>"; 
 

 
var rem1 = str.replace('<a href=\"', ''); 
 
var rem2 = rem1.replace('\"target=\"_blank\">', ''); 
 
var rem3 = rem2.replace('</a>', ''); 
 

 
var value = '=HYPERLINK("' + rem3 + '","View Media")'; 
 

 
console.log(value)

+0

[mcve]のスニペットを作成 – mplungjan

+0

Regexを試してください。例えば、私の答えをチェックしてみてください(それは改善することができますが、それはあなたにベースを与えます)。 –

答えて

1

常に最初の属性は、この

str = "<a href=\"https://twitter.com/FNBSA\" target=\"_blank\">FNBSA</a>"; 
 

 
var parts = str.split('\"'); 
 
var value = '=HYPERLINK("' + parts[1] + '","View Media")'; 
 

 
console.log(value)

+0

ありがとう!だからシンプルな...:Dは非常に感謝しています。 – onmyway

1

にスペース

var rem2 = rem1.replace('\"target=\"_blank\">', ''); 

を追加します。 hrefを想定し

str = "<a href=\"https://twitter.com/FNBSA\" target=\"_blank\">FNBSA</a>"; 
 

 
var rem1 = str.replace('<a href=\"', ''); 
 
var rem2 = rem1.replace('\" target=\"_blank\">', ''); 
 
var rem3 = rem2.replace('</a>', ''); 
 

 
var value = '=HYPERLINK("' + rem3 + '","View Media")'; 
 

 
console.log(value)

+0

助けてくれてありがとう、それは助けますが、不要なテキスト部分を解決しませんでした:)。 – onmyway

1

str.match('http(s)?:\/\/[a-z0-9.-]+[^"\']*')[0] 
正規表現を試してみてください10
+0

助けてくれてありがとう! – onmyway

関連する問題