2011-12-29 2 views

ответ

2

| является регулярным оператором выражение, что ведет себя как or. Вам нужно бежать, если вы хотите, чтобы соответствовать его внутри строки:

str = "Example || sentence"; 
document.write(str.replace(/\|\|/g, "+")); 
+1

лучший ответ до сих пор – MilkyWayJoe

2

| символ имеет особое значение в регулярных выражениях. Вы должны избежать этого.

document.write(str.replace(/\|\|/g, '+')) 
1

Эта:

str.replace(/\|\|/g, '+') 

Вертикальные полосы имеют специальные символы внутри регулярного выражения, и они должны быть экранированы.

Живая демонстрация:http://jsfiddle.net/mN3ft/

Смежные вопросы