Aufgabe 4 gelöst.
This commit is contained in:
parent
49a8836144
commit
67c7b6e78a
|
@ -1,4 +1,4 @@
|
|||
/*
|
||||
|
||||
package ch.zhaw.ads;
|
||||
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
|
@ -34,4 +34,3 @@ public class ADS1_4_test {
|
|||
}
|
||||
}
|
||||
|
||||
*/
|
|
@ -8,6 +8,43 @@ public class WellformedXmlServer implements CommandExecutor {
|
|||
}
|
||||
|
||||
public boolean checkWellformed(String arg) {
|
||||
Stack stack = new ListStack();
|
||||
char[] chars = arg.toCharArray();
|
||||
for(int i = 0; i < chars.length; i++){
|
||||
if(chars[i] == '<') {
|
||||
boolean closing = false;
|
||||
i++;
|
||||
if(chars[i] == '/'){
|
||||
closing = true;
|
||||
i++;
|
||||
}
|
||||
String tag = "";
|
||||
while(chars[i] != '>' && chars[i] != ' '){
|
||||
tag = tag + chars[i];
|
||||
i++;
|
||||
}
|
||||
if(tag.charAt(tag.length() - 1) == '/') {
|
||||
|
||||
}
|
||||
else if (closing){
|
||||
if(!tag.equals(stack.pop())){
|
||||
return false;
|
||||
}
|
||||
} else {
|
||||
stack.push(tag);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(stack.isEmpty()){
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private String getNextToken(){
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
}
|
Loading…
Reference in New Issue