最近在“问答”频道上看到这样的问题:
写道
test123[em:23:]5678[em:4:]
取出中括号中的数字
很显然大概的正则表达式应该是:[em:(\\d+):]
测试时,出问题了。问题出在‘[’‘]’。因为它们是正则表达式中的特殊字符。
试试转义,失败了。试试用Pattern的compile方法,编译含有[]的正则表达式,也失败了。
。。。。
最后,查看API(真是个好东西),发现了突破口-- 使用Unicode。
@Test
public void testRegx4() {
String source = "test123[em:23:]5678[em:4:]";
Pattern pattern = Pattern.compile("\\u005Bem:(\\d+):\\u005D");
Matcher matcher = pattern.matcher(source);
System.out.println("取得数字:");
while(matcher.find()){
System.out.println("找到:"+matcher.group(1));
}
}
终于,成功了。记录一下!
PS:还进行了更大胆的尝试,将正则表达式中的所有字符都替换为Unicode码,结果依然正确!
分享到:
相关推荐
在易语言中,正则表达式类是一个非常重要的工具,用于处理字符串的模式匹配和查找。在处理中文文本时,这个功能尤为关键,因为中文字符的编码和处理方式与英文有所不同。 正则表达式是用于匹配字符串模式的一种强大...
kettle 根据系统时间加正则表达式动态匹配获取多个文本文件
本文将深入探讨易语言中的正则表达式匹配中文的原理、方法以及应用。 正则表达式(Regular Expression)是一种模式匹配的语言,用于描述一种字符串的集合。在易语言中,我们可以通过内置的字符串函数来实现正则...
例如,在`<script language='vbscript'></script>`中,使用非贪婪匹配的正则表达式可以确保正确提取出`vbscript`作为`language`属性的值。 ### 结论 递归匹配和非贪婪匹配都是正则表达式中非常重要的特性。递归...
`RegExTool.e`和`RegExTool.exe`可能是正则表达式匹配工具的可执行文件,用户可以通过这些工具直接在命令行或图形界面中测试和应用正则表达式,无需编写代码。 总之,Java正则表达式匹配工具结合了强大的正则表达式...
总的来说,"PB实现的正则表达式"是一个关于在PowerBuilder 11.5中利用自定义或第三方库实现正则表达式功能的话题。虽然存在对中文字符的支持限制,但通过学习和理解提供的代码或库,开发者依然可以提升在Power...
1. **模糊查询**:通过正则表达式匹配相似的文本,如查询包含特定单词或短语的记录。 ```sql SELECT * FROM articles WHERE content REGEXP '.*example.*'; ``` 2. **格式验证**:确保输入的数据符合预期的格式,...
而本软件正是把强大的正则功能完美地添加到表格中,让 Excel、WPS 支持正则表达式的搜索、匹配提取、替换、定位等,让数据处理能力进化一个层次! 让 Office Excel、WPS 表格支持正则表达式的免费插件:「Excel ...
在正则表达式调试工具中,它可能包含了用于实现正则表达式匹配的函数或组件。 2. `MTracer.exe`:这是可执行文件,很可能是正则表达式调试工具的主程序。用户可以通过运行这个程序来启动和使用调试工具。 3. `...
- 字符转义:在正则表达式中,特殊字符需要通过反斜杠`\`进行转义,如`\.`表示匹配实际的点号,而不是任何字符。 - 常规字符到元字符的转换:例如,将`*`转换为`\*`,避免其被解释为量词。 - 正则表达式模式构建...
在labview中使用正则匹配模式很简单,难的就是使用正则表达式。很多人都搞不明白,查了很多资料还是不太明白。实际上就是一些类似通配符在作怪和其他语言也差不多。附件带上了,可以研究研究,构造正则表达式的方法...
在Java中,正则表达式是一种非常有用的技术,它可以帮助开发者快速匹配和提取字符串中的内容。但是,正则表达式也是一种非常复杂的技术,需要开发者具备一定的基础知识和经验。 为了帮助开发者更好地掌握Java正则...
在进行正则表达式匹配时,需要构建能够正确描述目标模式的正则表达式。对于`<div>`和`<style>`标签,通常需要考虑的是标签的开始`<div>`、结束`</div>`,以及它们之间的内容。对于`<style>`标签,需要识别它的开始`...
正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,它用于匹配字符串...在压缩包文件"正则表达式匹配"中,你可能找到更多关于正则表达式实际应用的实例和教程,这将有助于你加深理解和提升技能。
在Linux系统中,正则表达式(Regular Expression)是一种强大的文本处理工具,它能用于匹配、查找、替换等操作,广泛应用于数据提取、文件搜索、脚本编程等多个领域。本合集主要围绕如何在Linux环境下利用正则表达式...
在正则表达式中,可以使用字符集合([xxx])来匹配某些字符中的一个字符。字符集合可以通过显示声明每一个字符,或者通过连字符(-)来指定一个范围的字符。同时,字符集合还可以通过^来声明一个取反的字符集合,即...
在标准C++库中,虽然没有内置的正则表达式支持,但通过包含如 Boost 或 TR1(Technical Report 1)扩展,或者在较新的C++11及更高版本中使用库,开发者可以实现正则表达式功能。然而,对于MFC开发者来说,使用MFC内...
标题中的“pb 使用正则表达式源码pbregexp”指的是在PowerBuilder(简称pb)环境中,利用名为“pbregexp”的正则表达式组件来实现源代码级别的正则表达式操作。PowerBuilder是一款流行的可视化的、面向对象的软件...
在VB.NET中,正则表达式(Regular Expression)是一种强大的文本处理工具,它允许程序员通过模式匹配来处理字符串。这个“vb正则表达式实例”很可能是为了帮助开发者测试和理解正则表达式的工作原理而设计的一个应用...
在Lucene中,可以通过`regexQuery`来利用正则表达式进行复杂条件的匹配,从而实现更精确的搜索需求。 #### regexQuery详解 `regexQuery`是Lucene提供的一个用于执行正则表达式查询的方法。它接受一个`Term`对象作为...