java工具:《Java字符串处理:如何获取指定字符第N次出现的位置?》
文章目录
- 一、介绍
- 二、代码
一、介绍
问题:输出字符串 "0,1,61,"的第一个逗号、第二个逗号、第三个逗号、的索引
这段代码是一个JUnit测试方法,用于查找特定字符串在目标字符串中第N次出现时的索引位置。通过使用Java的正则表达式Pattern和Matcher类,实现了对字符串中指定子串的定位功能。
二、代码
@TestpublicvoidgetCommaIndex(){Stringstr="0,1,61,";StringmodelStr=",";//代表要搜索的特定字符串intcount=3;//代表要搜索的特定字符串出现第几次的索引位置//对子字符串进行匹配MatcherslashMatcher=Pattern.compile(modelStr).matcher(str);intindex=0;//matcher.find();尝试查找与该模式匹配的输入序列的下一个子序列while(slashMatcher.find()){index++;//当modelStr字符第count次出现的位置if(index==count){break;}}//matcher.start();返回以前匹配的初始索引。System.out.println(slashMatcher.start());}