java实现查找替换功能实现查找替换功能
主要为大家详细介绍了java实现查找替换功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了java实现查找替换功能的具体代码,供大家参考,具体内容如下
查找
if(searchTxt.getText().equals("")){
JOptionPane.showMessageDialog(null, "查找内容不能为空!");
}else if(!searchTxt.getText().equals("")){
//searchDialog.dispose();
if(fileChoose.focus == 1){
fileChoose.tp1.requestFocus(true);
str = fileChoose.tp1.getText();
startPosition = str.indexOf(searchTxt.getText());
endPosition = startPosition + searchTxt.getText().length();
fileChoose.tp1.select(startPosition, endPosition);
newEndPosition = endPosition;
}else if(fileChoose.focus == 2){
fileChoose.tp2.requestFocus(true);
str = fileChoose.tp2.getText();
startPosition = str.indexOf(searchTxt.getText());
endPosition = startPosition + searchTxt.getText().length();
fileChoose.tp2.select(startPosition, endPosition);
newEndPosition = endPosition;
}
}
查找下一处
nextTemp = newEndPosition;
if(fileChoose.focus == 1){
strAll = fileChoose.tp1.getText();
fileChoose.tp1.select(nextTemp, strAll.length());//选中所有未查找的字符串
nextStr = fileChoose.tp1.getSelectedText();
newStartPosition = nextStr.indexOf(searchTxt.getText()) + nextTemp;//在未查找的字符串中查找对应字符在tp1中的位置
newEndPosition = newStartPosition + searchTxt.getText().length();
fileChoose.tp1.select(newStartPosition, newEndPosition);//找到文本,选择文本
}else if(fileChoose.focus == 2){
strAll = fileChoose.tp2.getText();
fileChoose.tp2.select(nextTemp, strAll.length());//选中所有未查找的字符串
nextStr = fileChoose.tp2.getSelectedText();
newStartPosition = nextStr.indexOf(searchTxt.getText()) + nextTemp;//在未查找的字符串中查找对应字符在tp1中的位置
newEndPosition = newStartPosition + searchTxt.getText().length();
fileChoose.tp2.select(newStartPosition, newEndPosition);//找到文本,选择文本
}
替换
if(fileChoose.focus == 1){
fileChoose.tp1.requestFocus(true);
str = fileChoose.tp1.getText();
startPosition = str.indexOf(searchTxt.getText());
endPosition = startPosition + searchTxt.getText().length();
fileChoose.tp1.replaceSelection(replaceTxt.getText());
newEndPosition = endPosition;
}else if(fileChoose.focus == 2){
fileChoose.tp2.requestFocus(true);
str = fileChoose.tp2.getText();
startPosition = str.indexOf(searchTxt.getText());
endPosition = startPosition + searchTxt.getText().length();
fileChoose.tp2.replaceSelection(replaceTxt.getText());
newEndPosition = endPosition;
}
替换下一处
if(fileChoose.focus == 1){
fileChoose.tp1.requestFocus(true);
nextTemp = newEndPosition;
strAll = fileChoose.tp1.getText();////////////////////////////////
fileChoose.tp1.select(nextTemp, strAll.length());/////////////////////////////
nextStr = fileChoose.tp1.getSelectedText();
newStartPosition = nextStr.indexOf(searchTxt.getText()) + nextTemp;
newEndPosition = newStartPosition + searchTxt.getText().length();
fileChoose.tp1.select(newStartPosition, newEndPosition);
fileChoose.tp1.replaceSelection(replaceTxt.getText());