그래서 숫자와 다른 기호가있는 문자열이 있는데 각 숫자의 값을 1 씩 증가시키고 싶습니다. 예를 들어 "test1check2"문자열에서 "test2check3"을 수신하려고합니다. 그리고이 메서드는 "replaceAll"메서드로 만 만들 수 있습니까? indexOf, charAt ...와 같은 메소드를 사용하지 않고도 (i.replaceAll ("\ d", ...)) ?,문자열의 증가 숫자 값
답변
나는 당신이 간단한 replaceAll ...)와 같이 몇 줄을 써야합니다.
Pattern digitPattern = Pattern.compile("(\\d)"); // EDIT: Increment each digit.
Matcher matcher = digitPattern.matcher("test1check2");
StringBuffer result = new StringBuffer();
while (matcher.find())
{
matcher.appendReplacement(result, String.valueOf(Integer.parseInt(matcher.group(1)) + 1));
}
matcher.appendTail(result);
return result.toString();
여기에 구문 오류가있을 수 있지만 그와 비슷한 방식으로 작동합니다.
편집 : 각 디지트 별도로 증가되어야한다는 주석 (abc12d -> abc23d) 때문에 패턴 (\\ D +)로 변경한다 (\\ d)
EDIT 2 :Matcher
클래스에 따라 필요에 따라 StringBuilder
을 StringBuffer
으로 변경하십시오.
감사합니다. 정확히 내가 필요한 것입니다! –
+1 좋은 답변; 그러나 'StringBuilder'를 'StringBuffer'로 변경해야했습니다. 누군가를 위해 동일한 문제점이있는 경우를 대비하여! – chessofnerd
ID가 나는 문제는 지금 코멘트를 해결하기 위해 뿐이다 대답 한 알이
string testString = new string("test{0}check{1}");
for (int testCount = 0; testCount < 10; testCount++)
{
for (int checkCount = 0; checkCount < 10; checkCount++)
{
console.WriteLine(string.FormatString(testString, testCount, checkCount));
}
}
처럼 뭔가를 할 의향이 될, 자바에서이 작업을 수행 할 수 있습니다
for (int testCount = 0; testCount < 10; testCount++)
{
for (int checkCount = 0; checkCount < 10; checkCount++)
{
String s = String.format("test%scheck%s", testCount.ToString(), checkCount.ToString());
}
}
자바 질문이 아니고 C#입니다. –
- 1. 문자열의 증가 숫자
- 2. SQL - 숫자 열의 값 증가 비율을 계산하십시오.
- 3. 해시의 증가 값
- 4. 정규식 - 숫자 문자열의 교체 부분
- 5. 문자열의 파이썬 분할 값
- 6. 문자열의 정수 값
- 7. 자바 스크립트 정밀도 증가/감소 숫자
- 8. PHP foreach 루프의 자동 증가 숫자
- 9. MySQL의 증가 값 - 미스 때로는
- 10. xml 태그의 숫자 값
- 11. NSString stringWithFormat : 숫자 값
- 12. 콤보 상자의 숫자 값
- 13. 숫자 값 문제
- 14. 셀 날짜 값, 잘못된 숫자 값
- 15. 특정 패턴이있는 문자열의 시작 부분에있는 숫자 필터링
- 16. 값 아래의 숫자 검사를위한 정규식
- 17. 웹 페이지에서 숫자 값 긁기?
- 18. ORACLE 숫자 또는 값 오류
- 19. 숫자 IfThen 값 문이 실패합니다.
- 20. Django : order_by로 숫자 값 정렬
- 21. VBA에서 변수에 숫자 값 할당
- 22. 두 숫자 사이의 값 표시
- 23. DataGridViewCell에서 숫자 값 가져 오기?
- 24. 문자 TSQL의 숫자 값 너비?
- 25. Oracle의 새 열에 자동 증가 값 지정
- 26. 연동 됨. 반영된 값 유형의 증가
- 27. SQL Server에서 int 값 읽기 및 증가
- 28. iWork Numbers 09 셀 값 증가
- 29. 안드로이드 : SeekBar 증가 값 - How To
- 30. 스크립트의 자동 증가 열 값 재설정 mysql
당신이 test12이있는 경우 , 그것은 test13 또는 test23이되어야합니까? – Zed
모든 숫자에 해당해야합니다. 숫자는 0-9이므로 반드시 test23이어야합니다. –