2014-10-12 2 views
0

String에 생성자의 인덱스를 찾고 싶습니다. jtextArea에서 한 줄씩 살펴보고 있는데 생성자의 인덱스를 찾고 싶습니다. 하지만 "("")"의 색인을 원합니다. 사실, javas 클래스의 매개 변수 목록의 처음 부분과 끝 부분 위치를 찾고 싶습니다.RegEx를 사용하여 생성자의 인덱스 가져 오기

예 :

String clasname="test"; 
String firstlineoftextarea="test(6)"; 

출력 시작 = 4

인덱스; 끝 인덱스 = 6;

RegEx를 사용해야한다고 생각합니다.

+2

행에'('및')'가 여러 번 나타날 수 있습니까? – Dici

+0

@Dici 내가 .java 파일을 textarea에로드합니다. 행 단위로 읽습니다. 그래서 생성자 행의 행을 읽을 때, 매개 변수 list.line의 시작 및 끝 인덱스를 찾으려면 java에서 유효한 값을 모두 포함 할 수 있습니다. –

+0

물론 Java에서는'eval()'함수가 없지만 런타임에 Java 코드를 컴파일하고로드 할 수 있습니다. – msrd0

답변

2

당신은 같이 IndexOf를 사용할 수 있습니다 라인이 "()"의 한 쌍을 포함하는 경우

int first = firstlineoftextarea.indexOf("("); 
int last = -1; 
if (first >= 0) 
    last = firstlineoftextarea.indexOf(")",first); 

이것은 작동합니다. 두 개 이상이 포함 된 경우 firstlineoftextarea.lastIndexOf(")",first)을 사용하여 첫 번째 "("같은 방식으로 마지막 ")"의 인덱스를 얻을 수 있습니다.

+0

정규 메서드 호출을 제외하지 않습니다. –

관련 문제