Java正则表达式?
我在一个Java正则表达式?,java,regex,Java,Regex,我在一个Strg[]中有一组CSV提取的数据,每个元素的格式都是[bla-bla,bla2-bla2]。现在,我想去掉逗号之前的所有数据,同时去掉[]。基本上,输出应该是bla-bla 有人能帮我吗?我已经和regex打了一个小时了 我一直在使用这个正则表达式:“^[^\\[,*]”(它的意思是“从一开始就选择所有,除了[,直到第一个,”) 解释 ^ beginning of the string \[ opening [ ([^,]*) capture
Strg[]
中有一组CSV提取的数据,每个元素的格式都是[bla-bla,bla2-bla2]
。现在,我想去掉逗号之前的所有数据,同时去掉[]
。基本上,输出应该是bla-bla
有人能帮我吗?我已经和regex打了一个小时了
我一直在使用这个正则表达式:“^[^\\[,*]”
(它的意思是“从一开始就选择所有,除了[
,直到第一个,
”)
解释
^ beginning of the string
\[ opening [
([^,]*) capture as much as you can, except ,
,.* rest of string inside brackets
\] closing ]
$ end of string
在线试用。String temp=str.substring(1,str.indexOf(“,”) 不使用正则表达式求解它
String str = "[bla bla,bla2 bla2]";
str.substring(1,str.indexOf(","));
如果你需要正则表达式a,我们可以做一些类似的事情
String str = "[bla bla,bla2 bla2]";
Pattern p = Pattern.compile("([^\\[][^\$,]*)");
Matcher m = p.matcher(str);
if(m.find()) {
System.out.println( m.group(1));
}
使用的正则表达式是:([^\[[^\$,]*)
如果您想尝试这个正则表达式,请访问显示您正在使用的
regex
,您甚至需要一个正则表达式。您只需执行String str=“[bla bla,bla2 bla2]”String temp=str.substring(1,str.indexOf(“,”);事实上,这已经足够了……非常感谢!也足够了
String str = "[bla bla,bla2 bla2]";
Pattern p = Pattern.compile("([^\\[][^\$,]*)");
Matcher m = p.matcher(str);
if(m.find()) {
System.out.println( m.group(1));
}