[問答題] 本程序的功能是,根據(jù)用戶輸入的文件名,在相應(yīng)的文件內(nèi)容中查找匹配給定模式的字符串,并將這些字符串顯示出來。模式串為“href="…"”。請?zhí)顚憴M線處
[問答題] 本程序的功能是,根據(jù)用戶輸入的文件名,在相應(yīng)的文件內(nèi)容中查找匹配給定模式的字符串,并將這些字符串顯示出來。模式串為“href="…"”。請?zhí)顚憴M線處的內(nèi)容。
注意:請勿改動main()主方法和其他已有語句內(nèi)容,僅在橫線處填入適當語句。
import java.io.*;
import java.util.regex.*;
import javax.swing.*;
public class Example2_10
public static void main(String [] argv)
final String patternString ="href\s*=\s*("[^"]*"|[^\s>])\s*;
String fileName ;
try
System. out. print ( "請輸入html 文件的文件名: ");InputStreamReader in = new InputStreamReader(System.in);
BufferedReader imput = new BufferedReader(in);
fileName = imput.readLine();
if(fileName.equals(" "))
return;
StringBuffer buffer = new StringBuffer();
File file = new File(fileName);
FileInputStream readfile = new FileInputStream(file);
fo正確答案:patternString pattern.matcher(buffer)
參考解析:本題考查知識點:輸入輸出流和正則表達式解題思路:程序首先使用InputStreamReader的實例“in”從標準輸入中獲取用戶輸入的文件名,并將結(jié)果存放在“fileName”字符串中。if語句用來判斷用戶輸入的文件名是否為空,如果為空則退出程序,不做任何處理。然后根據(jù)文件名讀取相應(yīng)的文件內(nèi)容存放在StringBuffer的實例“buffer”中。然后建立起與正則表達式對應(yīng)的模式對象“pattem”,并與“buffer”幫定,生成一個匹配器“matcher”。最后使用while循環(huán)查找到相應(yīng)的字符串。 Patter的compile方法用來將正則表達式編譯成模式對象。compile方法的第一個參數(shù)是正則表達式字符串,所以第一個空的答案是“patternString”。 第二個空用來建立一個匹配器。模式對象建立匹配器的方法是matcher(string),其中string是需要做模式匹配的兌現(xiàn),本題中需要做模式匹配的對象是“buffer”。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。