- 浏览: 344509 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (249)
- 无废话ExtJs 系列教程 (26)
- jQuery (6)
- 钦波工作后的生活 (5)
- 工作/生活闲谈 (16)
- java基础知识 (44)
- java web (14)
- Struts (1)
- hibernate (8)
- Jpa (0)
- spring (1)
- ajax (3)
- java项目 (4)
- database (5)
- java 流行框架 (5)
- 异常处理 (4)
- 无废话Android系统教程 (6)
- 开发IDE (1)
- 亲自答过的java笔试题 (2)
- oa项目 (4)
- [ 民政局3.0系统 ]--知识点总结分析--与具体项目无关 (0)
- [ 黑龙江低保系统 ]--知识点总结分析--与具体项目无关 (2)
- 工作笔试 (1)
- xml (1)
- telecom项目分析 (13)
- swing (0)
- String运用 (2)
- css (1)
- 页面 (1)
- Html5 (2)
- oracle (4)
- 网站 (1)
- django (1)
- python (4)
- 民航数据中心遇到与解决的问题 (1)
- 平时关注的技术或特效 (1)
- Linux 命令 (2)
- 服务器监控工具 (1)
最新评论
-
wwytwen123:
[*]
java类中静态域、块,非静态域、块,构造函数的初始化顺序(回钦波) -
junying280efun:
yingtao.huang@gmail.com仁兄,麻烦你给我 ...
jBPM Web Designer(jBPM Web 设计器、jBPM 流程设计器、工作流程设计器) -
mobeicanglang:
我觉得楼主的例子全部都有错误,题目明明说的是try{}语句中有 ...
try return finally -
ashy1q:
楼主最后那段代码重复了,写了两遍。知识很详细,很基础,学习了。 ...
java类中静态域、块,非静态域、块,构造函数的初始化顺序(回钦波) -
185552143:
你好!
为什么我这样写p${m.id},会报错的?
能我帮我解 ...
Session问题
////////////////// test1 ADD_START-2012年02月03日 HUIQINBO/////////////////////////
public static void main(String args[]){
String line = " St Sc :huiqinbo"
+" St Dt IP :111.222.111.222"
+" St IP TS :0x32"
+" St L4 Src Pt/IP te:80(0x50)"
+" St L4 Dst Pt/IP ce:12";
String line = "St L4 Src Pt/IP te:80(0x50)";
.........
String setL4SrcPortICMPtype = getValue(line, "St L4 Src Pt/IP te");
调用getValue后的结果为80(0x50)
........
}
public static String getValue(String line, String attrName) {
WALog.traceIn();
if (line == null || attrName == null) {
throw new IllegalArgumentException();
}
String quotedAttrName = Pattern.quote(attrName);
try {
Matcher matcher = Pattern.compile(
quotedAttrName + "\\s*:\\s*(\\S+)\\b").matcher(line);
if (!matcher.find()) {
WALog.traceOut();
return "";
}
String value = matcher.group();
WALog.traceOut();
return value.substring(value.indexOf(':') + 1).trim();
} catch (PatternSyntaxException e) {
WALog.traceOut();
return "";
}
}
////////////////// test1 ADD_END-2012年02月03日 HUIQINBO/////////////////////////
///////////////////////test2 ADD_START-2012年02月29日 HUIQINBO//////////////////////////////////
今天正好有点时间我来补充一下上面我没有写完的方法:
其实上面的 getValue(String line, String attrName) 方法有不完美之处,为什么呢,因为如果你把我上面写好的程序copy到你的代码中去,会发现我上面写到的 【调用getValue后的结果为80(0x50)】 会少一个右括号,正确结果是 80(0x50
那为什么会少一个右括号呢,你自己考虑下,因为我写的正则表达式是\\s*:\\s*(\\S+)\\b 它,最后是以 \\b 结尾的,\\b 是指已单词末尾结尾,所以自然右括号就被过虑掉了,那我们该如何来把正确的结果80(0x50) 显示出来呢,下面我再写一个方法来满足需求,真不想写,写完会大家写不给个好评呵:
public static String getValue1(String line, String attrName) {
WALog.traceIn();
if (line == null || attrName == null) {
throw new IllegalArgumentException();
}
String quotedAttrName = Pattern.quote(attrName);
try {
// find key:xx(xx)
Matcher matcher = Pattern.compile(
quotedAttrName + "\\s*:\\s*\\S*\\s*\\(\\s*(\\S+)\\s*\\)").matcher(line);
if (!matcher.find()) {
// find key:(xx)
matcher = Pattern.compile(
quotedAttrName + "\\s*:\\s*\\(\\s*(\\S+)\\s*\\)").matcher(line);
if (!matcher.find()) {
// find key:xx
matcher = Pattern.compile(
quotedAttrName + "\\s*:\\s*(\\S+)\\b").matcher(line);
if (!matcher.find()) {
WALog.traceOut();
return "";
}
}
}
String value = matcher.group();
WALog.traceOut();
return value.substring(value.indexOf(':') + 1).trim();
} catch (PatternSyntaxException e) {
WALog.traceOut();
return "";
}
}
上面的粉色部分就是来处理我们的需求的, 解释下吧,若不又有网友提出各种的问题
\\s* 是指0个或多个空格
\\S* 是指0个或多个字符
\\( 是指小括号的左部分
(\\S+) 一个或多个字符,当然可以把\\S+两边的括号去掉,我这里写是为了便于观客们易看
\\) 是指小括号的右部分
这回大家清楚了吧,这次的结果一写是 80(0x50)
好了,更多交流、更多了解,请联系我
QQ:444084929 【回钦波】
个人主面 :http://www.huiqinbo.com
///////////////////////test2 ADD_START-2012年02月29日 HUIQINBO//////////////////////////////////
发表评论
-
JAVA正则表达式经典实例教程[huiqinbo]
2012-03-22 14:38 1807归纳者 : huiqinboaddress : bei ... -
Java多线程同步Synchronized使用并详细分析与实例 【huiqinbo转于网络并总结】
2012-03-09 13:55 3088一.Synchronized基本知识: 在 ... -
获得到当前方法及类的名字Thread.currentThread().getStackTrace()[0].getClassName();
2011-09-26 13:22 2232获得到当前方法及类的名字: Thread.curren ... -
BufferedReader和BufferedOutputStream之间的灵活应用【回钦波】
2011-09-16 17:44 1070package log; import java.io.Bu ... -
获取c盘下的用户地址System.getProperty("user.home")
2011-09-15 17:09 1144System.getProperty("user.h ... -
为java.util.logging自定义文件处理器及日志输出格式
2011-09-15 17:05 1796为java.util.logging自定义文件处理器及日志输 ... -
jdk log自定义配置文件【回钦波写于20110915】
2011-09-15 17:00 1197import java.io.IOException; ... -
获得本类(java文件)的路径【huiqinbo】this.getClass().getResource("/").getPath()
2011-09-14 15:29 1353package com.huiqinbo; imp ... -
java中ArrayList 、LinkList区别【huiqinbo】
2011-09-08 11:42 1238java中ArrayList 、LinkList、List区 ... -
jdk的logging实例入门学习
2011-09-07 16:40 1007jdk的logging实例入门学习 分类: JDK 2 ... -
关于数组new 与不new 的问题
2011-08-30 15:05 861public class Test { String c ... -
Eclipse快捷键大全(huiqinbo)
2011-08-30 11:12 772Ctrl+1 快速修复(最经典 ... -
oracle数据库左右内外连接 【回钦波详解】
2011-08-29 15:00 1194oracle数据库左右内外连 ... -
@SuppressWarnings("**")是什么意思【回钦波详细解答】
2011-08-10 10:55 1005很多网友问我(回钦 ... -
很好用的Java反编译软件【回钦波】
2011-04-29 16:49 1068有Windows,Linux和Mac OS三个版本可 ... -
JAVA进制等移位运算[参考于回钦波文库]
2010-12-20 14:33 1050JAVA移位运算符 文章分类:Java编程 作者:回钦波 ... -
java类中静态域、块,非静态域、块,构造函数的初始化顺序(回钦波)
2010-11-05 13:16 2994java类中静态域、块,非 ... -
线程的状态
2010-11-02 09:50 1014学习线程《五》——线程的状态 文章分类:Java编程 ja ... -
ArrayList,Vector, LinkedList的存储性能和特性
2010-11-01 13:05 1062ArrayList,Vector, LinkedList的存储 ... -
LinkedHashMap 和 HashMap的区别[软件框架师 回钦波详解]
2010-10-18 23:49 1417...
相关推荐
总结来说,程序设计方法学是不断演进的,从最初的技巧至上到结构化、面向对象,再到分布式和敏捷开发,它反映了计算机科学和技术的进步,以及对软件质量、可维护性和开发效率的追求。在实践中,选择合适的设计方法和...
在软件设计模式中,工厂模式是一种非常基础且实用的设计模式,它主要解决的是对象创建的问题。工厂模式的主要目的是封装对象的创建过程,使得代码在不指定具体类的情况下,能够创建对象,增强了代码的可扩展性和可...
### Java设计模式入门详解 #### 一、设计模式概述 设计模式是软件工程领域中一种通用的解决方案,它描述了...希望本文对初学者有所启发,也期待大家在实际开发中能够灵活运用这些模式,创作出更加优雅和高效的代码。
SEM优化:品牌词管理闲谈(下).doc
面试中的闲谈技巧,好的闲谈是敲门砖
因此,对于SEM管理员或SEO专家来说,确保品牌词的高排名是至关重要的,这可以有效地引导这些高度转化的流量直接到达目标网站。 品牌词管理的一些常见策略包括将品牌词推至搜索结果的首位,以及利用品牌变体词来扩大...
Java Swing 是Java提供的一种用于构建桌面应用程序用户界面的图形用户界面工具包,它属于Java ...这个项目对于初学者来说是一个很好的起点,同时也对有经验的开发者有参考价值,帮助他们快速搭建自己的聊天应用框架。
例如,通过`document.implementation.createDocument()`创建一个新的XML文档对象,然后使用`getElementsByTagName()`, `getElementById()`, 或 `querySelectorAll()`等方法来选取特定的XML元素。 2. XMLHttpRequest...
### 闲谈嵌入式编程的复杂性 #### 嵌入式编程的入门与挑战 嵌入式编程是一项技术密集型的工作,它涉及到软件与硬件的紧密结合。文章提到,很多从事嵌入式编程的工程师往往是从自动化或电子等相关专业转型而来,这...
设计者需要综合考虑这些因素来完成一个高质量的PCB布局。 #### 三、信号完整性设计 信号完整性问题主要出现在高速数字电路中,尤其是在使用DDR内存等高速组件时尤为突出。为了减少信号反射、串扰等问题,需要注意...
6. **创作背景**:《春末闲谈》写于1925年,当时中国正处于北洋军阀统治时期,思想文化领域受到压制,鲁迅借此篇散文对封建统治者的麻痹术进行了批判。 7. **文章主旨**:文章通过细腰蜂与青虫的比喻,揭示了统治者...
闲谈嵌入式编程的复杂性 嵌入式编程是一种复杂的编程技术,需要开发人员具备深入的编程知识和实践经验。文章通过两个实践例子,说明了嵌入式编程中的多个问题,并分析了解决这些问题的方法。 嵌入式编程的复杂性...
Photoshop调色教程中提到的“LAB模式”是一种与设备无关的颜色模型,它模拟了人眼对颜色的感知,包含了所有人类能看见的颜色。在LAB模式下,图像由一个明度通道和两个颜色通道(a通道和b通道)组成。明度通道负责...
这个项目对于初学者来说具有一定的学习价值,因为它运用了多种常见的Web开发技术,如伪静态页面和ASHX(HTTP自定义处理程序)来实现动态数据的处理。 首先,我们来看看“伪静态页面”。在Web开发中,伪静态是一种将...
移情工具方法要求设计师使用辅助工具如雾气眼镜或过重的手套来模拟不同身体状态下的用户感受,这有助于设计师体验特殊用户群体的困境,从而评估产品的可用性。 等比模型方法利用与实际物体等比例缩小的模型来展示...
Photoshop调色教程:闲谈LAB模式计算调色详解 Photoshop调色教程:闲谈LAB模式计算调色详解是一篇详细的Photoshop调色教程,旨在帮助读者深入了解LAB模式计算调色的原理和应用。 LAB 模式的概念 LAB 模式是一种...
【描述】: 面子,对于中国人来说,是一个深远而复杂的话题。它涉及到个人尊严、社会地位以及人际交往等多个方面,渗透在日常生活和历史事件中。本文将探讨面子的重要性、来源、表现以及其在不同情况下的运用。 ...
GDP的核算不仅包括实际的市场价格,还可能引入各种价格指数进行调整,如消费者价格指数(CPI)、生产者价格指数(PPI)等,以消除价格变动的影响。此外,经常讨论的GNP(国民生产总值)与GDP相似,但GNP计算的是国民...
在嵌入式系统领域,学习路径的选择一直是初学者关注的焦点。在51单片机盛行的时代,汇编语言是开发者必备的技能,因为51单片机的资源有限,且当时的C语言库并不完善,尤其是在处理底层硬件操作时,汇编语言的优势尤...
总的来说,审计职能的多元化和审计方法的灵活运用,共同构成了审计工作的核心。审计不仅是经济活动的监督者,更是组织管理的顾问和服务提供者。在实际操作中,审计人员需要根据具体情况,巧妙地结合各种审计方法,以...