2017-12-28 24 views
-1

にシンボルからリンクを作成し、私は新しいもの Javascriptがここに文字列

var newText = "Lorem ipsum dolor <a href="https://www.google.com/">https://www.google.com/</a> amet, <a href="https://www.google.com/">https://www.google.com/</a>"; 

このような私のスクリプトではありません作品を作成したいと思い、私の文字列

var text = "Lorem ipsum dolor *https://www.google.com/* amet, *https://www.google.com/*"; 

です。私は間違っているの?あなたはそれらすべてを交換するに<a href=></a>

var text = "Lorem ipsum dolor *https://www.google.com/* amet, *https://www.google.com/*"; 
 
var newText = text.replace("*", "<a href=></a>"); 
 
console.log(newText);

とアスタリスクの最初の発生を交換する

var newText = text.replace("*", "<a href=></a>"); 
+1

を。 – SLaks

+0

以下をお読みください:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace –

+0

https://stackoverflow.com/questions/161738/what-is-最も良い正規表現であるかどうかを調べる – epascarello

答えて

1

、あなたは($1になります)キャプチャグループを使用することができますし、 replace

\*(.*?)\*

説明

  • マッチアスタリスク\*
  • 貪欲以外の任意の文字(.*?)
  • マッチアスタリスクをキャプチャするキャプチャグループ\*

var text = "Lorem ipsum dolor *https://www.google.com/* amet, *https://www.google.com/*"; 
 
var newText = text.replace(/\*(.*?)\*/g, "<a href=\"$1\">$1</a>"); 
 
console.log(newText)

+0

うまくいけば、開始する文字列の中にリンクがありません....この例では問題ありませんがif実際のものにはイメージや何かが壊れてしまいます。 – epascarello

+0

var newText = text.replace(/\*(.*?)\*/g、 "$1"); – RogerC

+0

これは、リンクURLをAタグ​​のhrefパラメータに追加します。 – RogerC

1

あなたは以下のコードを試みることができる:正規表現について学ぶ

var text = "Lorem ipsum dolor *https://www.google.com/* amet, *https://www.google.com/*"; 
var arrtext=text.split('*'); 
var newtext=''; 

for(var i=0;i<arrtext.length;i++){ 

    if(arrtext[i].startsWith("http")){ 
     var link='<a href="'+arrtext[i]+'">'+arrtext[i]+'</a>'; 
     newtext=newtext+link; 
    }else{ 
     newtext=newtext+arrtext[i]; 
    } 

} 
関連する問題