字符串有多个匹配结果

java 代码

        // Java中 获取指定字符串在另一个字符串中出现的次数
        //方法一、//不区分大小写
        String str = "Hello,my name is Ben.Please visit my website at http://www.forta.com/.";
        String regex = "My";
        Pattern pattern = Pattern.compile(regex,Pattern.CASE_INSENSITIVE);
        int count = 0;
        Matcher match = pattern.matcher(str);
        while (match.find()) {
            count++;
        }
        System.out.println(count);

        //方法一、//区分大小写
        String regex1 = "my";
        Pattern pattern1 = Pattern.compile(regex1,Pattern.CASE_INSENSITIVE);//不区分大小写
        int count1 = 0;
        Matcher match1 = pattern1.matcher(str);
        while (match1.find()) {
            count1++;
        }
        System.out.println(count1);

        //方法二、
        String reg = "my";
        int count2 = 0;
        int index1 = 0;
        //indexOf方法返回一个整数值,指出 String 对象内子字符串的开始位置。如果没有找到子字符串,则返回 -1
        while ((index1 = str.indexOf(reg, index1)) != -1) {
            index1 = index1 + reg.length();
            count2++;
        }
        System.out.println(count2);

2
2
2

替换不区分大小写

        String input = "I like Java,jAva is very easy and jaVa is so popular.";
        String replacement="ccc";
        System.out.println(input);
        System.out.println(input.replaceAll("java", replacement));
        System.out.println(input.replaceAll("(?i)java", replacement)); 

I like Java,jAva is very easy and jaVa is so popular.
I like Java,jAva is very easy and jaVa is so popular.
I like ccc,ccc is very easy and ccc is so popular. 

javascript 代码

ffunction myFunction(){
  //方法一、 通过分割获取长度原理
  var str = "Hello,my name is Ben.Please visit my website at http://www.forta.com/.";
  var regex = "my";
  var n = (str.split(regex)).length-1;
  alert(n); 

  //方法二、通过正则实现
  //eval(string) 函数可计算某个字符串,并执行其中的的 JavaScript 代码。
  var reg=eval("/My/ig");//g代表全局查找,i代表不区分字母大小写
  var count = str.match(reg).length;
  alert(count);
}

都弹出 2
时间: 2024-10-10 05:32:42

字符串有多个匹配结果的相关文章

轻松python文本专题-字符串开头或者结尾匹配

场景: 字符串开头或者结尾匹配,一般是使用在匹配文件类型或者url 一般使用startwith或者endwith >>> a='http://blog.csdn.net/raylee2007' >>> a.startswith ('http') True 注意:这两个方法里面的参数可以是str,也可以是元组,但是不可以是列表和字典 >>> a='http://blog.csdn.net/raylee2007' >>> a.starts

将字符串s1中的任何与字符串s2中字符匹配的字符都删除

编写一个程序,将字符串s1中的任何与字符串s2中字符匹配的字符都删除. 函数原型:void my_squeeze(char s1[], char s2[]) #include <stdio.h> void my_squeeze(char s1[], char s2[]) { int i = 0; int j = 0; while (s2[j]) { while(s1[i]) { if (s2[j]==s1[i]) { while (s1[i+1]) { s1[i] = s1[i + 1]; i

华为OJ:2199 判断输入字符串中的括号匹配

根据不同的括号有个计数器,在遍历时,当计数器小于0则返回false或者当遍历完后,计数器仍旧不为零,也返回false. import java.util.Scanner; public class bracketsMatch { public static void main(String args[]){ Scanner input=new Scanner(System.in); String s=input.nextLine(); int a=0; int b=0; int c=0; for

字符串类似数据库Like匹配

public boolean checkMatchFNOrFI(String[] strArray,String value){ boolean flag = false; for(String s : strArray){ if(!s.equals("")){ String temp = s.replaceAll("\\?", "\\\\w").replaceAll("\\*", "\\\\w*"); f

关于html字符串正则判断和匹配的具体使用

前言最近在写一个组件,需要传入html字符串,里面用到了很多正则来判断是否是html标签或者匹配标签内的文本等,这里记录下.如何判断传入的字符串包含一个闭合html标签/<\/?[a-z][\s\S]>/i这个其实并不能判断标签闭合的完整性或者顺序等,只是判断字符串中是否有html标签(包含自定义标签),这对我来说足够了.这给正则里面需要学习的就是[\s\S]可以代表一切字符串./<([a-z][\s\S])>.<\/\1>/i这个就更加规范一些可以匹配一个完整闭合的标

Oracle中substr截取字符串并用INSTR范围匹配字符串位置截取

1:update 表名  set 列名= SUBSTR(列名,INSTR(列名,'匹配字符',1,1)+1) where 条件 like '%*%' 2:select SUBSTR(列名,INSTR(列名,'.',1,1)+1) as d from 表名 t where 条件 like '%-%'; 例:Select INSTR(‘ORC+001‘,‘+‘,1,1) from dual 返回的是"4" 如果该字符串没有匹配字符 返回的是“0”. INSTR:INSTR方法的格式为 INSTR(源

Python: 字符串开头或结尾匹配str.startswith(),str.endswith()

问题 需要通过指定的文本模式去检查字符串的开头或者结尾,比如文件名后缀,URLScheme 等等. 解决方案 1.检查字符串开头或结尾的一个简单方法是使用str.startswith() 或者是str.endswith() 方法.比如: eg1:>>> filename = 'spam.txt'>>> filename.endswith('.txt')True>>> filename.startswith('file:')False>>&g

Lua 有关字符串的剪切 以及匹配

1.对字符中的“()”的内容剪切: 1 local num1 = string.find(str1,"("); 2 local num2 = string.find(str1,")"); 3 4 local str2 = string.sub(str1,0,num1); 5 local str3 = string.sub(str1,num1+1,num2); 代码中直接如行1使用string.find 会报错: lx13.lua:2: unfinished capt

C#匹配中文字符串的4种正则表达式分享

本文介绍在C#中使用匹配中文的正则表达式,包括纯中文.有中文.中文开头.中文结尾等几个正则表达式示例.在正则表达式中,中文可以通过Unicode编码来确定正则表达式范围. 在C#中,匹配中文的正则表达式用Unicode来表示时,范围是: [\u4e00-\u9fa5].所以,在此基础上,我们可以得到如下一些正则表达式. 1.匹配字符串全部是中文字符的正则表达式 代码如下: "^[\u4e00-\u9fa5]+$" 说明:“^”表示字符串开头,“$”表示字符串结束,“[\u4e00-\u