关于Java正则表达式,一对括号里面加任意字符的正则表达式怎么表示?
比如(id,name,salary,email),([(].+[)])我这样写是不可以的,我尝试过\\(,貌似也不可以。...
比如(id,name,salary,email),([(].+[)])我这样写是不可以的,我尝试过\\(,貌似也不可以。
展开
展开全部
String s1 = "abc1(id,name,salary,email)12()7**)";
String r1 = "[\\s\\S]*(\\([^\\)]+\\))[\\s\\S]*";
System.out.println(s1.matches(r1));
System.out.println(s1.replaceAll(r1, "$1"));
更多追问追答
追答
String sql = "insert into employee(id, name, salary, email) values (0, ejdef, 2, fefefe)";
String rx = "\\([^\\)]+\\)";
Pattern pattern2 = Pattern.compile(rx);
Matcher matcher2 = pattern2.matcher(sql);
while(matcher2.find())
{
System.out.println(matcher2.group());
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
^\(.*\)$
看看。
为什么加中括号? 中括号一般用来代表一个字符集吧
看看。
为什么加中括号? 中括号一般用来代表一个字符集吧
追问
String RegExp="^\(.*\)$ ";这是什么,报错。。
追答
"\\(.*\\) "
java里面 \ 是转义字符 需要写两次。
另外,如果任意字符要匹配1次以上,.* 也可以换成 .+
如果括号中的内容需要排除括号的话,可以像下面这么写
"\\([^\\(\\)]*\\) "
我手头没有java环境,希望能帮到你。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
\\([\\w\\W&&[^()]]+\\)
更多追问追答
追问
不可以
追答
我的是可以的
public static void main(String[] args) {
String regex="\\([\\w\\W&&[^()]]+\\)";
String input="(d)fsasfaa(dsf dasfkljdfkl)ddd(sf)dasf";
Pattern p=Pattern.compile(regex);
Matcher m=p.matcher(input);
while(m.find()){
System.out.println("匹配子串:"+m.group(0));
}
}
结果:
匹配子串:(d)
匹配子串:(dsf dasfkljdfkl)
匹配子串:(sf)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询