代码集2-去除文本html标签、 获取时间sql语句、执行sql语句报错、 获取文本中的第一张图片路径、jsp页面自动刷新

去除文本html标签,留下纯文本

	private String removeHtmlTag(String htmlContent){
        if (htmlContent!=null&&htmlContent.length()>0) {
            //去除html标签
            htmlContent = htmlContent.replaceAll("\\s*",""); //去除空格
            String regEx_html="<[^>]+>";                      //HTML标签正则表达式
            Pattern pattern = Pattern.compile(regEx_html);
            Matcher matcher = pattern.matcher(htmlContent);
            while (matcher.find()){
                htmlContent = htmlContent.replace(matcher.group(),"");
            }
            return htmlContent.replaceAll("&nbsp;","");
        }else {
            return "";
        }
    }

获取时间sql语句

查询今天的信息记录

SELECT * FROM customer WHERE TO_DAYS(`create_time`) = TO_DAYS(NOW());

查询昨天的信息记录

SELECT * FROM customer WHERE TO_DAYS(now()) - TO_DAYS(create_time) <= 1;

获取本周数据

SELECT * FROM customer WHERE YEARWEEK(DATE_FORMAT(create_time,'%Y-%m-%d')) = YEARWEEK(NOW()); 

查询上周的数据

SELECT * FROM customer WHERE YEARWEEK(DATE_FORMAT(create_time,'%Y-%m-%d')) = YEARWEEK(NOW())-1; 

查询近7天的信息记录

SELECT * FROM customer WHERE DATE_SUB(curdate(), INTERVAL 7 DAY) <= DATE(create_time);

查询近30天的信息记录

SELECT * FROM customer WHERE DATE_SUB(curdate(), INTERVAL 30 DAY) <= DATE(create_time);

获取当月数据

SELECT * FROM customer WHERE DATE_FORMAT(create_time,'%Y-%m') = DATE_FORMAT(NOW(),'%Y-%m')

查询上一月的信息记录

SELECT * FROM customer WHERE PERIOD_DIFF(DATE_FORMAT(NOW(), '%Y%m'), DATE_FORMAT(create_time, '%Y%m')) =1; 

查询上个月的数据

SELECT * FROM customer WHERE DATE_FORMAT(create_time,'%Y-%m')=DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 MONTH),'%Y-%m')

获取3月份数据

SELECT * FROM customer WHERE DATE_FORMAT(create_time,'%Y-%m') = DATE_FORMAT('2016-03-01','%Y-%m')

获取三月份数据

 SELECT * FROM customer WHERE YEAR(create_time)='2016' AND MONTH(create_time)='3'

查询距离当前现在6个月的数据

SELECT * FROM customer WHERE create_time BETWEEN DATE_SUB(NOW(),interval 6 month) and NOW();

执行sql语句报错

[Err] 1267 - Illegal mix of collations (utf8_general_ci,COERCIBLE) and (latin1_swedish_ci,NUMERIC) for operation '<'

使用错误中写的编码方式:latin1_swedish_ci

执行:
Sql代码 →SET collation_connection = ‘latin1_swedish_ci’;
再次执行:
Sql代码 →SHOW VARIABLES LIKE ‘coll%’;

其中collation_connection变为:latin1_swedish_ci
再次执行报错的SQL语句,执行成功

获取文本中的第一张图片路径

		List<String> srcList = new ArrayList<String>(); // 用来存储获取到的图片地址
        Pattern p = Pattern.compile("<(img|IMG)(.*?)(>|></img>|/>)");// 匹配字符串中的img标签
        Matcher matcher = p.matcher(smJiguangPush.getContent());
        boolean hasPic = matcher.find();
        if (hasPic == true){	// 判断是否含有图片
            while (hasPic){ 	// 如果含有图片,那么持续进行查找,直到匹配不到
                String group = matcher.group(2);// 获取第二个分组的内容,也就是 (.*?)匹配到的
                Pattern srcText = Pattern.compile("(src|SRC)=(\"|\')(.*?)(\"|\')");// 匹配图片的地址
                Matcher matcher2 = srcText.matcher(group);
                if (matcher2.find()) {
                    srcList.add(matcher2.group(3));// 把获取到的图片地址添加到列表中
                }
                hasPic = matcher.find();// 判断是否还有img标签
            }
            System.out.println(srcList.get(0));
        }

jsp页面自动刷新

1.页面自动刷新:

把如下代码加入<head>区域中
<meta http-equiv="refresh" content="20">
其中20指每隔20秒刷新一次页面.

2.页面自动刷新js版

<script language="JavaScript">
function myrefresh(){
   window.location.reload();
}
setTimeout('myrefresh()',1000); //指定1秒刷新一次
</script>

3.用setHander()方法

在这里插入代码片
<%
//页面每隔30秒自动刷新一遍
response.setHeader("refresh","30");
%>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值