首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Regex -搜索一个单词并使用不区分大小写的相同单词替换它。

Regex -搜索一个单词并使用不区分大小写的相同单词替换它。
EN

Stack Overflow用户
提问于 2012-10-17 06:17:57
回答 3查看 811关注 0票数 2

可能重复: regex replace all ignore case

如何获得所需的输出?

输入字符串-

代码语言:javascript
复制
"Software Industry. software Industry. SOFTWARE INDUSTRY. software industry. "

被搜查的消息-

代码语言:javascript
复制
"software industry"

产出-

代码语言:javascript
复制
"*Software Industry*. *software Industry*. *SOFTWARE INDUSTRY*. *software industry*. "

总之,我必须找到一个短语,用开始和结束星号(*)替换相同的短语,忽略这个情况。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-10-17 06:25:21

您可以将replaceAll(?i)一起使用,这将执行case-insensitive替换。

代码语言:javascript
复制
String str = "Software Industry. software Industry. SOFTWARE INDUSTRY. "+
                                                    "software industry. "
str = str.replaceAll("(?i)(software industry)", "\\*$1\\*");
票数 3
EN

Stack Overflow用户

发布于 2012-10-17 06:25:08

为此,可以使用模式匹配(Regex)。

首先使用组提取短语并将其存储在字符串或任何其他数据结构中。然后使用替换函数来实现输出。

你可以参考这篇文章:http://www.vogella.com/articles/JavaRegularExpressions/article.html

票数 3
EN

Stack Overflow用户

发布于 2012-10-17 06:27:30

您也可以尝试这样的方法:

代码语言:javascript
复制
String str=new String("Software Industry. software Industry. SOFTWARE INDUSTRY. software industry.");
str=Pattern.compile("(software industry)",Pattern.CASE_INSENSITIVE).matcher(str).replaceAll("*$1*");
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12928265

复制
相关文章

相似问题

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