最近写项目时,要求在客户端输入时进行信息校验,下面是收集常用的几个JS正则表达式,以及java获取ip的方法亲测可用,后面将常用的小工具持续在此做记录。
1.正则表达式
- 手机验证规则
let checkPhone = /^1[3|4|5|7|8][0-9]{9}$/;
- 电话号码:区号+号码,区号以0开头,3位或4位 号码由7位或8位数字组成
let checkTelephone = /^0\d{2,3}-?\d{7,8}$/;
- 用户名:校验用户名 只能输入5-20个以字母开头、可带数字、“_”、“.”的字串
- let checkName = /^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/;
- 密码:只能输入6-20个字母、数字、下划线
let checkPass = /^(\w){6,20}$/;
- 邮箱:
let checkEmail = /^[a-zA-Z0-9_-]+@([a-zA-Z0-9]+\.)+(com|cn|net|org)$/;
- 验证是否全为中文
let checkChinese = /^[\u4e00-\u9fa5]+$/;
2.java获取ip方法
public static String getLocalIp(HttpServletRequest request) {
String remoteAddr = request.getRemoteAddr();
String forwarded = request.getHeader("X-Forwarded-For");
String realIp = request.getHeader("X-Real-IP");
String ip = null;
if (realIp == null) {
if (forwarded == null) {
ip = remoteAddr;
} else {
ip = remoteAddr + "/" + forwarded.split(",")[0];
}
} else {
if (realIp.equals(forwarded)) {
ip = realIp;
} else {
if(forwarded != null){
forwarded = forwarded.split(",")[0];
}
ip = realIp + "/" + forwarded;
}
}
return ip;
}
3.java统计字符串中包含某个字符或者字符串的方法
public int countStringIncludeChar(String str, String ch){
int count = str.length() - str.replaceAll(ch,"").length();
return count;
}
4.windows自动备份文件及文件夹的脚本(*.bat)
pause
(使窗口暂停)
@echo on
echo y|XCOPY D:\js D:\beifen /S /D /Y
pause
@echo off
将其添加在任务计划程序即可
5.windows自动备份数据库脚本(*.bat)
c:
cd C:\Program Files\MySQL\MySQL Server 5.5\bin
set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
md "C:\Program Files\mysql_beifen\sql\%ymd%"
mysqldump -h电脑ip -uroot -proot 数据库名称>D:\mysql_beifen\sql\%ymd%.sql
将其添加在任务计划程序即可
6.分页查询必用公式
开始位置计算公式:开始位置 =(当前页-1)* 每页记录数
7.注册邮箱发送验证码
//传入邮箱地址和验证码
public static boolean Email(String emailaddress, String code) {
try {
//不用更改
HtmlEmail email = new HtmlEmail();
//需要修改,126邮箱为smtp.126.com,163邮箱为smtp.163com,QQ为smtp.qq.com
email.setHostName("smtp.126.com");
email.setSmtpPort(25);
email.setCharset("UTF-8");
// 收件地址
email.addTo(emailaddress);
//此处填邮箱地址和用户名,用户名可以任意填写
email.setFrom("发送邮件的邮箱", "发送邮件的姓名");
//此处填写邮箱地址和客户端授权码
email.setAuthentication("发送邮件的邮箱@126.com", "邮箱客户端授权码");
//此处填写邮件名,邮件名可任意填写,但需要经常改,否则会被网易拦截
email.setSubject("消息接收邮箱验证");
//此处填写邮件内容
email.setMsg("验证码:" + code);
email.send();
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
}
}