Eclipse 플러그인을 사용하여 프로젝트를 만들고 IDE를 작성했습니다.현재 열려있는 편집기에서 특정 문자열의 위치를 가져 오는 방법은 무엇입니까?
텍스트 상자로 구성된보기가 있습니다. 텍스트 상자에 텍스트를 입력하고 추가 단추를 누르면 텍스트가 편집기의 특정 문자열을 대체해야합니다. 현재 편집기를 찾을 수 있지만 교체 할 문자열의 위치를 찾는 방법을 알려드립니다.
누구든지 나를 도와 줄 수 있습니까?
Eclipse 플러그인을 사용하여 프로젝트를 만들고 IDE를 작성했습니다.현재 열려있는 편집기에서 특정 문자열의 위치를 가져 오는 방법은 무엇입니까?
텍스트 상자로 구성된보기가 있습니다. 텍스트 상자에 텍스트를 입력하고 추가 단추를 누르면 텍스트가 편집기의 특정 문자열을 대체해야합니다. 현재 편집기를 찾을 수 있지만 교체 할 문자열의 위치를 찾는 방법을 알려드립니다.
누구든지 나를 도와 줄 수 있습니까?
이 작업을 직접 수행하지 말고 String.replaceFirst()
또는 String.replaceAll()
대체품을 사용하는 것이 더 쉽지 않습니까?
대상 편집기에서 현재 텍스트 String
을 "가져 오는 것"이 필요하다면 바꾸기를 수행 한 다음 대상 편집기로 다시 String
을 "설정"하십시오.
저는 Eclipse에 익숙하지 않지만 대부분의 텍스트 필드는 JTextComponent
과 같은 추상 클래스를 구현하며 편리한 방법은 getText()
및 setText()
입니다.
How do I use the text document model을 참조하십시오. Eclipse 텍스트 기반 편집기를 사용할 때 검색을 구현하고 바꿀 수있는 방법을 설명합니다. 에디터에 대한 참조를 가지고 있고, 그것이 ITextEditor 인 경우
IDocumentProvider provider = editor.getDocumentProvider();
IDocument doc = provider.getDocument(editor.getEditorInput());
String content = doc.get();
는 이제 콘텐츠를 당신이이 캐릭터 라인 내에서 일부 코드의 위치를 찾을 수 있습니다 사용할 수있는 경우
. 당신은 텍스트와 대체 할 수있는 길이를 대체하는 오프셋 경우 어떻게 일식의 편집자 및 뷰, 에디터의 첫 번째 개념을 읽어 보시기 바랍니다 작동하고있는 경우
당신은
doc.replace(offset,length,newText);
를 호출 할 수 있습니다 데이터가 제공되고 여러 편집기간에 공유됩니다.
Adreamus
/편집 : 폴 웹스터에서 다른 대답은 더 이상 사용되지 않는 기능 "검색"을 사용 : 내가 여기에 게시됩니다 불구하고, 댓글을 게시 할 수 없습니다입니다. 대신 FindReplaceDocumentAdapter을 사용하는 것이 좋습니다. 'find'메서드는 IRegion을 반환하고, wchich는이 어댑터에 연결된 문서의 오프셋과 길이를 포함합니다.
표준 기능이 있습니까? – karthigayan
**이 표준 기능입니다 **! – ninesided
위의 함수를 호출하기 위해 BufferedReader 및 InputStream의 인스턴스를 만들어야합니까? – karthigayan