JavaScript替换两个特殊字符之间的文本

时间:2015-08-05 10:10:52

标签: javascript regex

我想用新行(;#)替换<br>个字符之间的所有内容。我怎么能用JavaScript做到这一点?

示例:

字符串:

  

Beilagenteller - 混合蔬菜盘;#369; #FischfiletmitKräutersoße - 鱼片,香草酱,;#183; #Rinderroulade“Hausfrauen Art”,(S)Soße - 牛肉酱橄榄酱

结果:

  

Beilagenteller - 混合蔬菜盘
FischfiletmitKräutersoße - 鱼片,香草酱,Rinderroulade“Hausfrauen Art”,(S)Soße - 牛肉酱橄榄酱

3 个答案:

答案 0 :(得分:3)

假设;#之间的值始终为数字,则可以在字符串/;#\d*;#/g调用中使用正则表达式replace()

var input = 'Beilagenteller - Mixed vegetables plate;#369;#Fischfilet mit Kräutersoße - Fish fillet, herbs sauce,;#183;#Rinderroulade "Hausfrauen Art", (S) Soße - Beef olive with sauce';

var output = input.replace(/;#\d*;#/g, "<br>");

document.write(output);

要显示正则表达式的作用,这里是a visualisation

Example

答案 1 :(得分:2)

您可能想尝试一下:

var str = "Beilagenteller - Mixed vegetables plate;#369;#Fischfilet mit Kräutersoße - Fish fillet, herbs sauce,;#183;#Rinderroulade \"Hausfrauen Art\", (S) Soße - Beef olive with sauce";

str = str.replace(/;#[0-9]*;#/g, "<br/>");

console.log(str);

答案 2 :(得分:0)

使用以下代码

address="Beilagenteller - Mixed vegetables plate;#369;#Fischfilet mit Kräutersoße - Fish fillet, herbs sauce,;#183;#Rinderroulade 'Hausfrauen Art', (S) Soße - Beef olive with sauce"



address= str.replace(/;#[0-9]*;#/g, "\n");