`
roway
  • 浏览: 50339 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

Regex 匹配模式

阅读更多

1.匹配模式
a.作用:改变某些结构的匹配规定
b.形式:
I:Case Insensitive-----不区分大小写。
S:SingleLine(dot All)--.号匹配任意字符(换行符也可以)
M:MultiLine------------^字符串中各个行文本的开头$各个文本的结尾
X:Comment--------------可以添加注释。
2.Mode
a.作用:改变某些结构的匹配规定
b.形式:
I:不区分大小写
S:点号通配
M:多行模式
X:注释模式
3.I:不区分大小写
a.作用:在匹配时,不对英文单词区分大小写
在java中在编译正则表达式时:CASE_INSENSITIVE
4.S:单行模式
作用:更改点号.的匹配规定,点号也可以匹配换行符。
在java中在编译正则表达式时: DOTALL
5.M:多行模式
作用:更改^和$的匹配规定,它们可以匹配字符串内部各行文本的开头和结束位置。
\A和\Z则不受影响.
在java中在编译正则表达式时:MULTILINE
6.X:注释模式
a.作用:在正则表达式内部可以使用注释
b.形式:注释以#开头,以换行符结束(或直到表达式的末尾)
c.使用此模式后,会忽略正则表达式中的所有空白字符。
在java中在编译正则表达式时:COMMENTS
7.模式的混合
a.作用:同时使用多个模式
b.形式:在编译正则表达式时,把表示模式的多个参数以竖线"|"连接起来。
8.模式的作用范围
a.作用:精确控制各个模式的作用范围
b.形式:在表达式中,以(?ismx)的方式启用模式,(?i)ABC

以(?-ismx)的方式停用模式.(?i)AB(?-i)C

 

/**
 * 不区分大小写模式
 * */
public class ModeConfict {

	public static void main(String[] args) {

		String str = "abc";

		String regex = "(?-i)ABC";//区分大小写,比模式参数的优先级更高

		// String regex = "ABC";

		Pattern p = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
		//Pattern p = Pattern.compile(regex);

		Matcher m = p.matcher(str);

		if (m.find()) {
			System.out.println("\"" + str + "\" can be matched with regex \""
					+ regex + "\"");
		} else {
			System.out.println("\"" + str
					+ "\" can not be matched with regex \"" + regex + "\"");
		}

	}

}



9.模式的冲突
如果在正则表达式内部,通过模式作用范围指定了模式,而在外部又指定了其他模式参数,
则模式作用范围的优先级更高。

分享到:
评论

相关推荐

    Java程序员超好用的regex匹配工具

    本文将深入探讨Java程序员如何利用好regex匹配工具,特别是针对描述中提到的“Java程序员超好用的regex匹配工具”。 首先,我们要理解正则表达式的概念。正则表达式是一种模式,可以用来匹配一串字符,这些模式通常...

    正则表达式匹配regex.rar

    正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,用于匹配、查找、替换或提取字符串中的模式。在编程、数据处理和文本编辑器中广泛应用,它通过一套特定的字符序列(元字符和量词)来定义要...

    regex.h regex.cpp

    正则表达式(Regular Expression)是一种强大的文本处理工具,常用于模式匹配、数据提取、字符串查找等场景。在本案例中,"regex.h" 和 "regex.cpp" 是两个关键文件,它们分别代表了C语言中处理正则表达式的头文件...

    scala正则表达式与模式匹配.doc

    1. `findAllIn(source: CharSequence)`:该方法用于匹配字符串中所有与输入模式相匹配的字符,并返回 `Regex.MatchIterator` 对象。MatchIterator 是一种特殊的 Scala 集合迭代器,可以使用 for 循环迭代输出所有匹配...

    C++Regex正则表达式

    C++中的正则表达式(Regex)是一种强大的文本处理工具,它允许程序员通过模式匹配来搜索、替换或分割字符串。正则表达式在C++中是通过标准库 `<regex>` 提供的,这个库提供了丰富的功能,使得处理复杂的文本模式变得...

    Cpp regex usge demo

    在C++编程语言中,正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,用于模式匹配、查找、替换和提取字符串中的特定模式。STL(Standard Template Library)库是C++的一个重要组成部分,它...

    Regex Tester

    - **调整选项**:根据需要调整匹配模式(如忽略大小写、全局匹配等)。 5. **.NET Framework的Regex类** .NET Framework中的`System.Text.RegularExpressions`命名空间提供了`Regex`类,它包含了丰富的正则表达式...

    TestRegex_regex_C#_

    在IT行业中,正则表达式(Regex)是一种强大的文本处理工具,用于匹配、查找、替换或提取特定模式的字符串。C# 是一种广泛使用的编程语言,它提供了丰富的支持来处理正则表达式。"TestRegex_regex_C#" 这个标题表明...

    RegexTester 正则表达式工具及教程

    用户可以根据实际需求选择不同的匹配模式。 3. **分组与捕获**:RegexTester 可以显示分组匹配的结果,这对于处理复杂的正则表达式非常有用。分组允许用户在表达式中定义子模式,并捕获这些子模式的匹配内容。 4. ...

    RegEx TestBed

    正则表达式(RegEx)是一种强大的文本处理工具,用于在字符串中进行模式匹配和查找、替换等操作。`RegEx TestBed` 是一个专为 .NET 平台设计的正则表达式测试工具,它提供了直观的界面和丰富的功能,帮助开发者测试...

    linux下的C语言POSIX正则表达式头文件和源文件: regex.h regex.cpp

    在Linux操作系统中,C语言编程时常常需要处理字符串匹配和模式查找的问题,这时POSIX(Portable Operating System Interface)正则表达式库就显得尤为重要。POSIX正则表达式是符合IEEE Std 1003.1标准的一套规则,它...

    RegexTester.exe

    在编程和数据分析中,正则表达式(Regular Expression,简称Regex)是一种强大的文本处理工具,能进行复杂的模式匹配、查找、替换和提取等操作。了解并熟练运用正则表达式是提升工作效率的关键。 该工具的核心功能...

    RegexTester

    5. **替换功能**:除了查找匹配,RegexTester也可能提供替换功能,让用户用新的文本替换匹配到的模式,预览替换结果。 6. **调试工具**:高级的RegexTester可能具有调试功能,如逐步执行正则表达式,查看每一步的...

    正则表达式测试工具regex101

    正则表达式(Regular Expression,简称regex)是用于匹配字符串的一种模式,广泛应用于文本处理、数据验证、搜索和替换等场景。在IT行业中,掌握正则表达式是提高工作效率的关键技能之一。`regex101`是一个在线的...

    regex test.zip_regex

    - 使用`std::basic_regex`构造器创建`std::regex`对象,传入正则表达式字符串和匹配模式。匹配模式可以是`std::regex_constants::ECMAScript`(默认),`std::regex_constants::extended`等。 3. **匹配操作**: ...

    regex正则表达式入门

    正则表达式(Regex)是计算机编程中一种强大的文本处理工具,用于匹配、查找、替换或提取符合特定模式的字符串。在本入门资料中,我们将深入理解正则表达式的基本概念,掌握其核心语法,并通过实例来提升实战能力。 ...

    Regex Helper

    正则表达式,简称regex,是一种模式匹配语言,用于在文本中查找、替换或提取特定的字符串模式。它们广泛应用于数据验证、文本分析和搜索等功能。在.NET框架中,正则表达式的操作主要通过System.Text.Regular...

    regex tester 中文版 正则表达式 测试

    3. **匹配模式选择**:通常包括全局匹配(g)和多行匹配(m)等选项,这些模式会影响正则表达式的匹配行为。 4. **匹配结果展示**:工具会高亮显示所有匹配的文本,并提供匹配的数量和具体位置。 5. **测试功能**...

    C++正则表达式-regex类(不依赖其他库)

    1. **构造与初始化**:你可以通过传递一个字符串或字符数组来创建`std::regex`对象,这个字符串定义了你要匹配的正则表达式模式。例如,`std::regex pattern("hello world")`创建了一个匹配"hello world"的正则...

    Regex测试工具

    4. 匹配选项:提供多种匹配模式,如全局匹配、多行模式、忽略大小写等。 5. 结果解释:详细解释匹配过程,包括捕获组、反向引用等。 6. 替换功能:允许用户使用正则表达式进行文本替换。 7. 快捷键和代码复制:方便...

Global site tag (gtag.js) - Google Analytics