Java在長(zhǎng)字符串中查找短字符串的實(shí)現(xiàn)多種方法
方案一:
補(bǔ)充:在輸入短字符串時(shí),如果有空格,可以在比較前用 trim()方法截取前后空白
/*該方法只適用于有特殊分割符號(hào)的字符串*/ System.out.println("請(qǐng)輸入字符串:"); Scanner str1=new Scanner(System.in); String s=str1.nextLine(); System.out.println("請(qǐng)輸入第二個(gè)字符串:"); Scanner str2=new Scanner(System.in); String s2=str2.next(); String[] i= s.split(" ");//對(duì)長(zhǎng)字符串進(jìn)行分割得到一個(gè)字符串?dāng)?shù)組 int o=0; for (int j = 0; j <i.length ; j++) { if (s2.equals(i[j])==true){//對(duì)字符數(shù)組進(jìn)行遍歷比較 o++; } } System.out.println("次數(shù)為:"+o); }
方案二:
//如果替換未造成字符串長(zhǎng)度損失,該方法則不適用 System.out.println("請(qǐng)輸入一個(gè)長(zhǎng)字符串:"); Scanner str1 = new Scanner(System.in); String s = str1.nextLine(); System.out.println("請(qǐng)輸入短字符串:"); String s1 = str1.nextLine(); String s3 = s.replaceAll(s1, "0");//字符替換 int b1 = s.length() - s3.length();//計(jì)算出s字符串損失的長(zhǎng)度 int b2 = b1 / (s1.length() - 1);//根據(jù)規(guī)律計(jì)算出s1字符串在s字符串中出現(xiàn)的次數(shù) System.out.println("次數(shù)為:"+b2);
方案三:
//該方法適用于各種模式 System.out.println("請(qǐng)輸入一個(gè)長(zhǎng)字符串:"); Scanner str1 = new Scanner(System.in); String s = str1.nextLine(); System.out.println("請(qǐng)輸入短字符串:"); String s1 = str1.nextLine(); int c=0; for (int i = 0; i <s.length()-s1.length() ; i++) { if (s1.equals(s.substring(i,i+s1.length()))){/*字符串比較,對(duì)長(zhǎng)字符串進(jìn)行截取,之后用截取得到的字符串與短字符串進(jìn)行比較*/ ++c; } } System.out.println("次數(shù)為: " + c);
到此這篇關(guān)于Java在長(zhǎng)字符串中查找短字符串的實(shí)現(xiàn)多種方法的文章就介紹到這了,更多相關(guān)Java 查找字符串內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決@PostConstruct注解導(dǎo)致的程序無法啟動(dòng)(@PostConstruct的執(zhí)行)
這篇文章主要介紹了解決@PostConstruct注解導(dǎo)致的程序無法啟動(dòng)(@PostConstruct的執(zhí)行)問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01Java必須學(xué)會(huì)的類的繼承與多態(tài)
這篇文章主要介紹了Java類的繼承與多態(tài)的相關(guān)資料,幫助大家更好的理解和學(xué)習(xí)Java,感興趣的朋友可以了解下2020-08-08SpringBoot熱部署Springloaded實(shí)現(xiàn)過程解析
這篇文章主要介紹了SpringBoot熱部署Springloaded實(shí)現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03spring mvc 組合mybatis框架實(shí)例詳解
本項(xiàng)目采用 maven 結(jié)構(gòu),主要演示了 spring mvc + mybatis,controller 獲取數(shù)據(jù)后以json 格式返回?cái)?shù)據(jù)。對(duì)spring mvc 組合mybatis的方法感興趣的朋友可以參考下本文2018-01-01Java對(duì)象轉(zhuǎn)Json,關(guān)于@JSONField對(duì)象字段重命名和順序問題
這篇文章主要介紹了Java對(duì)象轉(zhuǎn)Json,關(guān)于@JSONField對(duì)象字段重命名和順序問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08Java的Hibernate框架中Criteria查詢使用的實(shí)例講解
這篇文章主要介紹了Java的Hibernate框架中Criteria查詢使用的實(shí)例講解,Hibernate是Java的SSH三大web開發(fā)框架之一,需要的朋友可以參考下2016-01-01