目前有一个问题,需要将字符串中的所有字母字符除了'_'、'-'和数字之外都移除。我的字符串如下所示。
let str = '/Anna-Charoline_1985-02-14_London/';
我尝试了以下代码来删除不需要的字符。
let formatted = str.replace(/[D&\/\\#,+()$~%.'":*?<>{}]/g, '');
它没有起作用。 请问是否有人可以帮助我?期望的输出是_1985-02-14_
。
目前有一个问题,需要将字符串中的所有字母字符除了'_'、'-'和数字之外都移除。我的字符串如下所示。
let str = '/Anna-Charoline_1985-02-14_London/';
我尝试了以下代码来删除不需要的字符。
let formatted = str.replace(/[D&\/\\#,+()$~%.'":*?<>{}]/g, '');
它没有起作用。 请问是否有人可以帮助我?期望的输出是_1985-02-14_
。
通过使用一个 否定 字符类,这样做会更加容易:
str.replace(/[^0-9_-]/g, '');
所有不是数字0到9、下划线或减号的字符都将被替换为空字符串。
第一个-
在这里表示“范围”,因为它处于两个其他字符之间,第二个字符只表示“本身”,因为它位于字符类的末尾。如果它不在开头或结尾之外的任何位置,那么它需要转义为\-
。
/[^0-9_-]/g
- CBroestr.replace(/ [a-zA-ZD&\ / \\#,+()$〜%。'“:*?<> {}] / g,'')
- Lumpenstein