`
xly_971223
  • 浏览: 1276787 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

正则表达式中的groupCount与group

    博客分类:
  • java
阅读更多
groupCount是用在pattern中有‘()’时使用
如pattern = "(src)='(http)://[^']+'";
找到的m.groupCount 就为2
m.group() = m.group(0) 是匹配的一整段
m.group(1) = src
m.group(2) = http


group的用法如下
public static void main(String[] args) {
		String src = "sss#this#xx#that#df";
		Pattern pattern = Pattern.compile("#\\w+#");
		Matcher matcher = pattern.matcher(src);
		System.out.println("matcher.groupCount():" + matcher.groupCount());
		while(matcher.find()){
			System.out.println(matcher.group()); 
		}
	}

输出为:
matcher.groupCount():0
#this#
#that#

如果pattern改为 Pattern.compile("#(\\w+)#");
则matcher.groupCount()输出为1
1
0
分享到:
评论
1 楼 niuqiang2008 2011-02-27  
路过 ... 楼主多讲些

相关推荐

    使用Java正则表达式分析处理日志

    例如,如果日志中包含错误信息的字符串,我们可以使用`Matcher.groupCount()`来统计匹配到的错误数量。 4. **异常处理**:对于异常堆栈跟踪,正则表达式可以帮助我们快速定位问题所在。例如,`"\\tat .*\\.([^.]+)\...

    C#中的正则表达式详解

    在.NET框架中,正则表达式被设计为与Perl 5正则表达式兼容,同时还包含了某些其他实现中未提供的功能。.NET框架中的正则表达式类属于基类库的一部分,可以与任何面向公共语言运行库(CLR)的语言或工具一起使用,如...

    Java正则表达式详细讲解

    在Java中,字符串与正则表达式之间的操作主要由`Pattern`、`Matcher`和`String`类的`matches()`、`split()`和`replaceAll()`等方法完成。 ### 2. 创建正则表达式 要创建一个正则表达式,你需要在字符串中包含特定...

    正则表达式知识示例详解源代码(java版)

    3. **分组与获取匹配结果**:`Matcher`的`group(int group)`方法可以获取匹配的子串,`groupCount()`返回分组数量。 4. **替换操作**:`Matcher`的`replaceAll(String replacement)`和`replaceFirst(String ...

    Python程序员必会的正则表达式

    * sub(pattern, repl, string, count=0):根据指定的正则表达式,替换源字符串中的子串。 * subn(pattern, repl, string, count=0):作用和 sub() 相同,返回一个二元的元组。 * search(pattern, string, flags=0):...

    java正则表达式学习

    3. `public int groupCount()`: 返回模式中捕获组的数量。 4. `public String group(int group)`: 获取指定组的匹配文本。 ### 正则表达式常用符号 1. 字符匹配:如`[abc]`表示a、b或c;`[^abc]`表示除a、b、c之外...

    java中的正则表达式

    ### Java中的正则表达式详解 #### 一、引言 正则表达式是一种非常强大的文本处理工具,它能够帮助开发者高效地进行字符串的搜索、替换等操作。自JDK 1.4版本起,Java便引入了对正则表达式的支持。本文将详细介绍...

    精通正则表达式基于.NET ASP PHP JSP JavaScript

    RegexApplication/Default.aspx 正则表达式类的应用 RegexApplication/GetPageHtmlData.aspx 获取网页的内容 第10章(/10/) ASPNETValidator/Compare.aspx 比较验证 ASPNETValidator/...

    java-regex正则表达式

    - **groupcount()**:返回模式中的捕获组数量。 - **replaceAll()**:用给定的字符串替换所有匹配的部分。 - **replaceFirst()**:用给定的字符串替换第一次匹配的部分。 - **appendReplacement()**:将匹配后的...

    正则表达式基本使用.doc

    `Matcher.groupCount()`则返回匹配的分组数量。在示例中,`\\w+`只有一个分组,因此`group(0)`返回整个匹配的字符串。 在`Group`类中,展示了如何使用分组(grouping)。`(?m)(\\S+)\\s+((\\S+)\\s+(\\S+))`这个...

    C++.Net中要使用正则表达式所需要文件

    4. **Group类**:表示正则表达式中的捕获组。 - `Group::Value`:获取组的匹配值。 - `Group::Captures`:获取CaptureCollection,包含组内的所有捕获。 5. **Capture类**:表示正则表达式中一个特定的捕获实例。...

    JAVA正则表达式实例教程

    - **`groupCount()`**:返回匹配器模式中的捕获组数。 - **`replaceAll(String replacement)`**:用给定的字符串替换所有匹配的部分。 - **`replaceFirst(String replacement)`**:只替换第一个匹配的部分。 - **`...

    JAVA正则表达式实例教程.pdf

    - `groupCount()`:返回匹配器模式中的捕获组数。 - `replaceAll(replacement)`:用给定的字符串替换所有匹配的部分。 - `replaceFirst(replacement)`:只替换第一个匹配的部分。 - `appendReplacement(sb, ...

    正则表达式速查表

    正则表达式速查表是一份提供了快速参考功能的文档,主要包含了正则表达式中常用的字符类、量词、边界匹配符、逻辑操作符等内容,还介绍了Python中re模块的相关方法和使用示例。为了更好地理解速查表中包含的知识点,...

    JAVA正则表达式4种常用功能

    i <= m.groupCount(); i++) { System.out.println(m.group(i)); } } ``` 在上面的代码中,我们使用正则表达式`.+\\.([^\\.]*)$`来提取文件名,然后使用`Matcher`对象来匹配字符串。如果匹配成功,那么我们可以...

    正则表达式的java应用

    4. **分组与获取**:正则表达式中的括号可以创建分组,Matcher提供`group(int group)`方法获取分组内容,`groupCount()`返回分组数量。例如: ```java String regex = "(\\w+)\\s+(\\d+)"; Pattern pattern = ...

    Java正则表达式的总结和一些小例子

    * int groupCount():返回匹配后的分组数目。 * String replaceAll(String replacement):用给定的 replacement 全部替代匹配的部分。 * String replaceFirst(String replacement):用给定的 replacement 替代第一次...

    正则表达式常用的方法

    在Java编程语言中,正则表达式提供了强大的文本处理能力,通过预定义的字符类、元字符、量词等元素,可以构建出灵活的模式来满足各种复杂的字符串匹配需求。 1. **创建正则表达式** 在Java中,我们可以使用`...

    Java正则表达式提取字符的方法实例

    groupCount()方法返回匹配中的分组数量,而group(1)和group(2)分别返回第一个和第二个分组的内容。 在本文的示例中,通过简单的正则表达式和匹配方法,我们能够提取出车牌号中的最后一个数字。如果需要提取字符串中...

Global site tag (gtag.js) - Google Analytics