【JAVA】找出文本中指定規律的字符,並替換其中某些字符

##這代碼有什麼用?正則表達式

我能幫您從一個文本文件中找出全部 指定規律的字符,而且還能替換結果中的某個指定字符,最後再打印出來。code

這裏的「規律」是指 匹配正則表達式。字符串

##怎麼實現的?io

  • 文本文件的讀取是經過BufferedReader和FileReader來實現:
BufferedReader br = new BufferedReader(new FileReader("E:/kk.txt"));
String s = null;
			while((s = br.readLine()) != null) {
				System.out.println(s);
			}
  • 找出指定規律的字符是經過Pattern和Matcher來實現的,它們的做用是實現正則表達式:
while((s = br.readLine()) != null) {
				Pattern p = Pattern.compile("\\d+[.]?\\d+M");//匹配模式
				Matcher m = p.matcher(s);//s爲被匹配的字符串,該方法參數類型爲CharSequence,它是String的父類
				if(m.find()){//Matcher.find爲是否匹配成功;Matcher.group()爲返回匹配到的結果
					System.out.println(m.group().replaceAll("M", "+"));
				}
				
			}
  • 替換指定字符串是經過,String的replaceAll方法來實現的:
if(m.find()){//Matcher.find爲是否匹配成功;Matcher.group()爲返回匹配到的字符串
					System.out.println(m.group().replaceAll("M", "+"));
					//String.replaceAll(正則表達式, 要替換成的字符)

				}

以上代碼,至少應該catch這兩個異常:方法

catch (FileNotFoundException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}

異常

相關文章
相關標籤/搜索