2015-02-10 2 views
0

У меня есть переменная ($ {Short}), которая представляет собой тело простого текста с новыми строками. Я сохранил это в Selenium IDE и хотел бы заменить новые строки. Это то, что я использую, любые предложения, почему он не работает?Selenium IDE javascript regex замена новой строки <br>

<tr> 
    <td>store</td> 
    <td>javascript{storedVars.Short.replace(/(?:\r\n|\r|\n)/g, '<br />');}</td> 
    <td>Short</td> 
</tr> 

Благодарим за понимание. Это регулярное выражение отлично работает в файле js.

ответ

0

Используйте storeEval вместо магазина. Если эхо $ {Short} в вашем примере выше вы, вероятно, чтобы увидеть

javascript{storedVars.Short.replace(/(?:\r\n|\r|\n)/g, '<br />');}

вместо прежних содержания Замыкание выполняется после регулярных выражений.

+0

К сожалению, это не сработало. Я заметил, что regexp изменяется на .replace (/ (?: \\ r \ n | \\ r | \ n)/g, '
') - обратите внимание на дополнительную \ перед \ r –

+0

Кстати, сообщение об ошибке говорит: [error] Unexpected Exception: SyntaxError: unterminated regular expression literal. "Спасибо @DMart –

+0

Это странно, это сработало для меня. Я думаю, проблема теперь в вашем регулярном выражении. Попробуйте его с тестовым регулярным выражением, например .replace ('/ ab /', '123'), чтобы доказать, что он работает. В противном случае попробуйте ускользнуть от всех \ – DMart