2013-05-17 3 views
0

임의의 길이의 임의의 문자열을 생성했습니다. lower, upper, numbers & 구두점.랜덤 문자열 (임의의 길이 길이 및 모든 문자 유형)에서 문자 (*, ',?, :, /, , all)를 바꿔야합니다.

randomStringWithSpecialChar(boolean specChar, String... specialChars){ 

String randomString = "GHHG#^%^57687987*'?:/\fgdg" 

if(!specChar){ 

    # I should replace (*, ', ?, :, /,\) with x, so that I can pass it as my testdata 

    String finalString = "GHHG#^%^57687987xxxxxxfgdg" 

} 

return finalString 

} 
+0

자바 프로그래밍 중입니까? (어떤 언어가 아닌 경우) – FDinoff

답변

2

자바 가정 :

나는

예 또는 지정된 문자없이 임의의 문자열을 생성 이러한 문자 (*, ', ?, :, /,\) & 중 어떤 입력을 받아 API를 쓰고 있어요. String#replaceAll()을 사용할 수 있습니다.

str.replaceAll("[*'?:/\\\\]", "x") 

이것은이 세트의 문자를 일치하고 x로 대체합니다. \\\\이 슬래시를 벗어납니다.

+0

임의의 문자열에 이러한 특수 문자가 포함되어 있거나 포함되어 있지 않을 수 있습니다 ... str.replaceAll이 해당 시나리오를 처리합니까 ?? – kumarvarun

+0

우리는 X *라는 정규 표현식이 있다고 생각합니다. 처리해야하지만 위의 정규 표현식에서 X * (X, 0 번 이상)을 사용해야합니다 – kumarvarun

+0

@ VarunMukka 문자열에 문자가 표시되지 않으면 아무것도 대체되지 않습니다. – FDinoff