首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript - Regex替换忽略某些特殊字符

Javascript - Regex替换忽略某些特殊字符
EN

Stack Overflow用户
提问于 2014-05-15 15:14:23
回答 3查看 1K关注 0票数 0

我有一个字符串,它可以是..

代码语言:javascript
复制
Samsung Blu-Ray Player
Samgung Bluray player
Samsung Blu/Ray player

我知道我想找到并替换bluray (稍后:给它一个特定的颜色)。因此,我想用正则表达式替换这个单词。但是对这种情况下的正则表达式语法一无所知。它应该忽略"/“和”“,并找到不区分大小写的字符串。

EN

回答 3

Stack Overflow用户

发布于 2014-05-15 15:19:33

试试这个:

代码语言:javascript
复制
var str = "Samsung Blu-Ray Player";
var res = str.replace(/(Blu.*?ray)/gi, '<span style="color:red">$1</span>');
console.log(res);
票数 2
EN

Stack Overflow用户

发布于 2014-05-15 15:17:02

可以使用以下命令替换该字符串

代码语言:javascript
复制
str = str.replace(/samsung blu[^\w]?ray player/gi, 'Samsung Blu Ray player')

哪里

  • [^\w]? -是任何非单词字符(non alphanumeric)
  • The search使其为optional
  • /gi -标志表示g全局搜索和caseinsensitive
票数 0
EN

Stack Overflow用户

发布于 2014-05-15 15:26:46

/\bblu\s*[^\w]?\s*ray\b/gi

与匹配的blurayfish相比,单词\b给了它更多的保守性

\s*使其不区分空格,因此blu - ray将匹配

[^\w]匹配像-这样的非单词符号,?表示可选

gi表示所有匹配,不区分大小写。

这是一个更具说明性的页面,旁边有测试用例和解释。

http://regex101.com/r/gD4xS6

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23671569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档