删除问号?使用jQuery .replace

时间:2016-01-18 10:46:35

标签: jquery regex

尝试在替换一些未经过处理的字符后,从另一个div中的名称向div添加一个类,但无法删除问号。

<div class="add-class-to-this">
    Class gets added here
</div>

<div class="get-class-name-from-contents-of-this">
    Name containing, question mark?
</div>

$('.add-class-to-this').addClass($('.get-name-from-contents-of-this').html().toLowerCase().replace(/ /g, '-').replace(/,/g, '').replace(/?/g, ''));

'包含问号的姓名?'使用小写,用连字符替换空格,删除逗号然后删除问号,但问号不会删除。

当我运行我的javascript编译器时,我收到错误:

Invalid regular expression: /?/: Nothing to repeat

1 个答案:

答案 0 :(得分:0)

第一个正则表达式必须是:

.replace(/\s/g, '-') // Replace the spaces

第三个应该是逃避正则表达式:

.replace(/\?/g, '-') // ? is a regex reserved character.

<强>控制台:

» "Name containing, question mark?".toLowerCase().replace(/\s/g, '-').replace(/,/g, '').replace(/\?/g, '')
« "name-containing-question-mark"