题目:给定一个只包括 '('
,')'
,'{'
,'}'
,'['
,']'
的字符串 s
,判断字符串是否有效。
有效字符串需满足:
每个右括号都有一个对应的相同类型的左括号。
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
解法:暴力破解,使用repalaceAll的正则表达式,\\是转义的意思,在正则表达式中左右括号前需要加\\进行转义。
class Solution{
public boolean isValid(String s){
int length1 = 0;
int length2 = 0;
while(true){
length1 =s.length();
s = s.replaceAll("\\(\\)","");
s = s.replaceAll("\\{\\}","");
s = s.replaceAll("\\[\\]","");
length2 = s.length();
if(length1==length2){
return false;
}
if("".equals(s) || s.length() == 0){
return true;
}
}
}