Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
2
Task/URL-decoding/Java/url-decoding-1.java
Normal file
2
Task/URL-decoding/Java/url-decoding-1.java
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
import java.net.URLDecoder;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
1
Task/URL-decoding/Java/url-decoding-2.java
Normal file
1
Task/URL-decoding/Java/url-decoding-2.java
Normal file
|
|
@ -0,0 +1 @@
|
|||
URLDecoder.decode("http%3A%2F%2Ffoo%20bar%2F", StandardCharsets.UTF_8)
|
||||
2
Task/URL-decoding/Java/url-decoding-3.java
Normal file
2
Task/URL-decoding/Java/url-decoding-3.java
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
16
Task/URL-decoding/Java/url-decoding-4.java
Normal file
16
Task/URL-decoding/Java/url-decoding-4.java
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
String decode(String string) {
|
||||
Pattern pattern = Pattern.compile("%([A-Za-z\\d]{2})");
|
||||
Matcher matcher = pattern.matcher(string);
|
||||
StringBuilder decoded = new StringBuilder(string);
|
||||
char character;
|
||||
int start, end, offset = 0;
|
||||
while (matcher.find()) {
|
||||
character = (char) Integer.parseInt(matcher.group(1), 16);
|
||||
/* offset the matched index since were adjusting the string */
|
||||
start = matcher.start() - offset;
|
||||
end = matcher.end() - offset;
|
||||
decoded.replace(start, end, String.valueOf(character));
|
||||
offset += 2;
|
||||
}
|
||||
return decoded.toString();
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue