正则表达式问题请教

sky333902 2009-08-04 12:53:26
C#中的Regex r = new Regex(@"[{](?<name>[^}]*)[}]");
如果替换成Java 中的Pattern该如何处理?
...全文
81 7 打赏 收藏 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sky333902 2009-08-04
  • 打赏
  • 举报
回复
使用group搞定了,结贴给分了,多谢帮助
sky333902 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 bigbug9002 的回复:]
就相当于这个:"[{]([^}]*)[}]"
但java不支持对捕获组的命名,所以? <name>没有办法实现。
[/Quote]
由于“[{]([^}]*)[}]”得出的结果会包含“{”“}”,而我并不需要,不知道如何处理
rascalboy520 2009-08-04
  • 打赏
  • 举报
回复
可以用索引哦,java中的正则有索引的,
bigbug9002 2009-08-04
  • 打赏
  • 举报
回复
就相当于这个:"[{]([^}]*)[}]"
但java不支持对捕获组的命名,所以?<name>没有办法实现。
kala197 2009-08-04
  • 打赏
  • 举报
回复
没看懂你的问题 是些Java 的正则表达式呢 还是什么的 ?
sky333902 2009-08-04
  • 打赏
  • 举报
回复
没有达到我要的效果啊
YY_MM_DD 2009-08-04
  • 打赏
  • 举报
回复

public boolean regExpParse(String patten,String input)
{
boolean flag = false;
PatternCompiler compiler = new Perl5Compiler();
PatternMatcher matcher = new Perl5Matcher();
String regexpTag = patten;
Pattern patternTag = null;
try {
patternTag = compiler.compile(regexpTag,Perl5Compiler.CASE_INSENSITIVE_MASK);
} catch (MalformedPatternException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(matcher.contains(input, patternTag))
{
flag = true;
}
return flag;
}


62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧