排除型字符组:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
  • 作用:规定某个位置不容许出现的字符
  • 形式:以[^...]给出,在方括号内列出不容许出现的字符
  • 排除型字符组仍然必须匹配一个字符,不能匹配空字符
public class GeneralNumThree {
public static void main(String[] args) {
String[] hexDigits = new String[] { "0", "1", "2", "3","4","5","6","7","8","9",
 "a", "b", "c", "d","e","f"};
String negativeDigitRegex = "[^0-5]";
String negativeDigitRegex2 = "[^0-5e-f]";
for (String hexDigit : hexDigits) {
if(regexMatch(hexDigit,negativeDigitRegex)){
System.out.println("16进制数值:" + hexDigit +"能够匹配正则1:" + negativeDigitRegex);
}else{
System.out.println("16进制数值:" + hexDigit +"不能够能够匹配正则1:" + negativeDigitRegex);
}
}
for (String hexDigit : hexDigits) {
if(regexMatch(hexDigit,negativeDigitRegex2)){
System.out.println("16进制数值:" + hexDigit +"能够匹配正则2:" + negativeDigitRegex2);
}else{
System.out.println("16进制数值:" + hexDigit +"不能够能够匹配正则2:" + negativeDigitRegex2);
}
}
}
private static boolean regexMatch(String s, String regex) {
return s.matches(regex);
}
}
第一个排除0-5之间数字,第二个排除0-5和e-f之间。
运行结果:
0不能够匹配正则1:[^0-5]
1不能够匹配正则1:[^0-5]
2不能够匹配正则1:[^0-5]
3不能够匹配正则1:[^0-5]
4不能够匹配正则1:[^0-5]
5不能够匹配正则1:[^0-5]
6能够匹配正则1:[^0-5]
7能够匹配正则1:[^0-5]
8能够匹配正则1:[^0-5]
9能够匹配正则1:[^0-5]
a能够匹配正则1:[^0-5]
b能够匹配正则1:[^0-5]
c能够匹配正则1:[^0-5]
d能够匹配正则1:[^0-5]
e能够匹配正则1:[^0-5]
f能够匹配正则1:[^0-5]
0不能够匹配正则2:[^0-5e-f]
1不能够匹配正则2:[^0-5e-f]
2不能够匹配正则2:[^0-5e-f]
3不能够匹配正则2:[^0-5e-f]
4不能够匹配正则2:[^0-5e-f]
5不能够匹配正则2:[^0-5e-f]
6能够匹配正则2:[^0-5e-f]
7能够匹配正则2:[^0-5e-f]
8能够匹配正则2:[^0-5e-f]
9能够匹配正则2:[^0-5e-f]
a能够匹配正则2:[^0-5e-f]
b能够匹配正则2:[^0-5e-f]
c能够匹配正则2:[^0-5e-f]
d能够匹配正则2:[^0-5e-f]
e不能够匹配正则2:[^0-5e-f]
f不能够匹配正则2:[^0-5e-f]
例子:
public class GeneralNumFour {
public static void main(String[] args) {
String[] strings = new String[] { "case", "casa", "caso", "cas"};
String regex = "cas[^e]";
for (String string : strings) {
if(regexMatch(string,regex)){
System.out.println(string +"能够匹配正则:" + regex);
}else{
System.out.println(string +"不能够能够匹配正则:" + regex);
}
}
}
private static boolean regexMatch(String s, String regex) {
return s.matches(regex);
}
}
运行结果:
case不能够匹配正则:cas[^e]
casa能够匹配正则:cas[^e]
caso能够匹配正则:cas[^e]
cas不能够匹配正则:cas[^e]
cas的情况,就是说排除型字符^e不能匹配任意一个字符,所以整个正则表达式的匹配失败。
注意:
排除型字符组的意思是:匹配未列出的字符,而不是“不匹配这个字符”
例如:cas[^e]匹配cas并且不为e的字符
 
未完待续。。。

转载于:https://blog.51cto.com/jooben/317153

正则表达式 学习笔记2.2相关推荐

  1. 正则表达式 学习笔记1.3

    书接上一回: 实例五:<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /& ...

  2. 正则表达式 学习笔记4.3

    下面看看逆序环视结构: public class GeneralSix { public static void main(String[] args) { String[] strings = ne ...

  3. 正则表达式 学习笔记3.4

    第一段为合法html代码,第二段为不合法html代码.<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office ...

  4. 正则表达式学习笔记011--贪婪和懒惰的匹配

    正则表达式学习笔记011--贪婪和懒惰的匹配 交流群1:251572072 交流群2:170933152 1.什么是贪婪匹配 从字面上理解:贪心,不满足,有多少要多少 比如正则里也一样:.*,.+,{ ...

  5. 正则表达式学习笔记010--子表达式的认识与应用

    正则表达式学习笔记010--子表达式的认识与应用 交流群1:251572072 交流群2:170933152 子表达式: ()用2个小括号,括起来的叫做子表达式 如: \d{3,4}([\s|-]?\ ...

  6. 正则表达式学习笔记009--大括号与选择符的认识与应用

    正则表达式学习笔记009--大括号与选择符的认识与应用 交流群1:251572072 交流群2:170933152 |  选择符 {n}前面的元素字符出现了n次 {n,}前面的元素字符最少出现n次,n ...

  7. 正则表达式学习笔记008--字符组简记法2

    正则表达式学习笔记008--字符组简记法2 交流群1:251572072 交流群2:170933152 \s [\t\n\r\f]     \t制表符     \n换行符     \r回车符     ...

  8. 正则表达式学习笔记007--字符组简记法1

    正则表达式学习笔记007--字符组简记法1 交流群1:251572072 交流群2:170933152 字符组简记法 1.对于常用的字符组,正则表达式提供了相应的简记法,能够方便的表示 它们,并让我们 ...

  9. 正则表达式学习笔记006--转义符的认识与应用

    正则表达式学习笔记006--转义符的认识与应用 交流群1:251572072 交流群2:170933152 也可以自己下载: 正则表达式学习笔记006--转义符的认识与应用 http://credre ...

  10. 正则表达式学习笔记005--脱字符和美元符的认识与应用

    正则表达式学习笔记005--脱字符和美元符的认识与应用 以前写的课程都没有附上源码,很抱歉! 交流群1:251572072 交流群2:170933152 也可以自己下载: 正则表达式学习笔记005-- ...

最新文章

  1. 区块链以太坊五大开发工具,你喜欢哪个?
  2. LeetCode实战:数组中的第K个最大元素
  3. 深度学习布料交换:在Keras中实现条件类比GAN
  4. burpsuit学习--修改来源地址
  5. Windows核心编程 第七章 线程的调度、优先级和亲缘性(下)
  6. java map移除key为空_Java实现过滤掉map集合中key或value为空的值示例
  7. clearbom.php,clearBOM.php
  8. php导出照片,TP5导出excel图片和数据--先下载图片到本地服务器
  9. UILocalNotification本地通知
  10. python中的星号和乘号_Python 函数中参数前面一个和两个星号(**)的区别
  11. 深入理解 Docker 网络原理
  12. RedHat Enterprise Linux Server 5 在VMware Workstation 6.5的详细安装过程(2)
  13. java双缓冲_java 双缓冲技术
  14. win7 桌面html,极品壁纸再一张:Windows7桌面就是我的家
  15. 树莓派通过局域网实现远程开机(wake on lan)
  16. 根据日期算星座 mysql,Hive 通过日期计算星座实例
  17. 操作系统——进程调度
  18. windows 磁盘被写保护怎么办
  19. 小学奥数公式大全 学习奥数必备“工具”
  20. pygame: libpng warning: iCCP: known incorrect sRGB profile 报错

热门文章

  1. 日常投票评分:大多都是拉票
  2. dpkg-buildpackage: error: fakeroot not found, either install the fakeroot
  3. Could not find com.serenegiant:common:4.1.1
  4. 黑洞时间公式,为根号内为负是什么意思
  5. WINDOWS下如何让NPAPI插件生效
  6. ImportError: No module named _internal
  7. 最早会外语的人,是怎么回事
  8. Visitor(访问者)
  9. Day_04 显示条纹 图案
  10. pydobc连接sql server_python – PyOdbc无法连接到SQL Server实例