0

**ワイルドカード記号 ( ) の各セットをタグ ( )に置き換えようとしています<p></p>

たとえば、私が持っている場合:

var stuff = array(
    "The color *blue*!!!!",
    "The color *red*!!!!",
    "The colors *red* and *blue*!!!!"
);

出力したい:

var stuff = array(
    "The color <p>blue</p>!!!!",
    "The color <p>red</p>!!!!",
    "The colors <p>red</p> and <p>blue</p>!!!!"
);

これを行う最も効率的な方法は何でしょうか?

4

2 に答える 2

3

単純なループを実行してみませんか:

for(var i=0; i < stuff.length; i++) {
   stuff[i] = stuff[i].replace(/[*]([^*]+)[*]/g, '<p>$1</p>');
}
于 2013-09-28T22:10:22.013 に答える
1

試す

var stuff = [
    "The color *blue*!!!!",
    "The color *red*!!!!",
    "The colors *red* and *blue*!!!!"
];


 var res  = stuff.map(function(o){
     return o.replace(/\*(.*?)\*/g,'<p>$1</p>');
 });

または単なるループ

 for(var i=0, len = stuff.length; i<len; i++){
      stuff[i] = stuff[i].replace(/\*(.*?)\*/g,'<p>$1</p>');
  }

フィドル

于 2013-09-28T22:11:41.110 に答える