반응형
다음과 같이 문자열이 있다고 하자.
테스테스트 테스트 (ver: 30)
위의 문자열에서 30이란 숫자만 추출하고 싶을 때엔 어떻게 해야할까?
그리고 (ver:abc)와 같이 돼있는 문자열에서 abc가 추출됐다고 할경우 이것이 숫자인지를 판별하는 방법은 뭘까?
1) 특정 문자열 추출
int res_ver = 0;
String tmp_string = "";
String tmp_s = "테스테스트 테스트 (ver: 30)";
Pattern p = Pattern.compile("\\(ver:(.*?)\\)");
Matcher matcher = p.matcher(tmp_s);
if(matcher.find()) {
tmp_string = matcher.group(1).trim();
}
다음과 같이 하면 tmp_string의 값은 "31"로 정상 추출된다.
2) 숫자, 문자열 판단
public static boolean isNumeric(String strNum) {
if (strNum == null) {
return false;
}
try {
double d = Double.parseDouble(strNum);
} catch (NumberFormatException nfe) {
return false;
}
return true;
}
위의 함수를 만들어서 아래에 적용시키면 된다.
if(isNumeric(tmp_string)) {
res_ver = Integer.parseInt(tmp_string);
}
반응형
'PHP' 카테고리의 다른 글
[Android] setSingleChoiceItems, AlertDialog 이용해서 메뉴화면을 띄우는 버튼 구현하기 (0) | 2023.09.04 |
---|---|
[Android] LinearLayout에서 왼쪽/오른쪽 배치 시키기(layout_gravity 속성과 view 엘리먼트 넣어주기) (0) | 2023.09.04 |
FirebaseInstanceId deprecated (FirebaseMessaging으로 바꿔주기) (0) | 2023.08.28 |
문서편집기와 PHP에서 정규식 변환하기 (대괄호, 중괄호, 소괄호 포함된 문자열 없애기) (0) | 2023.08.16 |
[admob, 안드로이드] 특정 확률로 "전면광고" 나오게끔 구현하기 (0) | 2023.08.04 |