1.正则校验 import java.util.regex.Matcher;import java.util.regex.Pattern; public class Validation { //------------------常量定义 /** * Email正则表达式="^([a-z0-9A-Z]+[-|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$"; */ //public static f…
通过继承ActionSupport类来完成Action开发,ActionSupport类不仅对Action接口进行简单实现, 同时增加了验证.本地化等支持 .真实开发中自定义Action都需要继承该类.对用户登录添加表单验证功能 ActionSupport类的作用: struts2不要求我们自己设计的action类继承任何的struts基类或struts接口,但是我们为了方便实现我们自己的action,大多数情况下都会继承com.opensymphony.xwork2.ActionSupport…
前言: 正则表达式(英语:Regular Expression)原属于计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.在很多文本编辑器里边,正则表达式通常被用来检索.替换那些符合某个模式的文本.许多程序设计语言都支持利用正则表达式进行字符串操作.例如,Perl,Shell,R,Java等等. 因本人最近刚好在学习R语言进行网页数据抓取,觉得有必要对正则表达式做个小总结,于是便有了此文. 1.重要元字符及其简短描述 元字符 描述 \ 将下一个字符标记为一个…
根据输入校验的处理场所的不同,可以将输入校验分为客户端校验和服务器端校验两种.服务器端验证目前有两种方式: 第一种 Struts2中提供了一个com.opensymphony.xwork2.Validateable接口,此接口只有一个方法:validate().如果有某个类实现了Validatable接口,Struts2就可以直接调用该类中的validate()方法.ActonSupport类实现Validateable接口.本文讨论此验证格式. 本文演示了一个模拟简单登录的场景:用户打开一个J…
前文:struts2:数据校验,通过Action中的validate()方法实现校验,图解 如果定义的Action中存在多个逻辑处理方法,且不同的处理逻辑可能需要不同的校验规则,在这种情况下,就需要通过Struts2框架提供的validateX()方法来准确校验Action中的某一个方法,其中X表示处理逻辑的方法名. 还是以前的例子,换一种写法,来说明validate()方法和validateX()方法的用法. 1. 创建前台JSP页面 表单录入页面:registerM.jsp <%@ page…
/** * * @Title: validadeRegExp * @Descrption : TODO (正则校验) * @param regExp * @param obj * @return * @return boolean * @Version:1.0 * @Date:2014-11-29 下午05:17:59 * @Author:CLL */ private boolean validadeRegExp(String regExp ,String obj) { Pattern patt…
java判断微信号.手机.名字的正则表达 - willgos - 博客园https://www.cnblogs.com/solossl/p/5813106.html 微信号正则校验,qq正则,邮箱正则 - qq_29091239的博客 - CSDN博客https://blog.csdn.net/qq_29091239/article/details/80075981 微信账号支持的格式(正则验证的方式JS实现) - liukai6的博客 - CSDN博客https://blog.csdn.net…
一些正则校验,判断邮箱,手机号码,车牌号,身份证号,网址,账号,密码,ip,去掉html格式,工商税号等. // 判断邮箱 isValid = [text isValidEmail]; // 判断手机号码 isValid = [text isValidPhoneNum]; // 判断ip isValid = [text isValidIP]; // 判断身份证号 isValid = [text isValidIdCardNum]; // 判断账号 isValid = [text isValidW…
hibernate validator是Bean Validation 1.1 (JSR 349) Reference Implementation,其广泛的应用在mvc的参数校验中,尤其是使用服务端spring mvc模板的时候.在这里,我们要讲的不是如何使用的问题.而是如何基于其提供更加符合项目要求以及最小化重复实现的目标,在不少情况下,我们在不同的服务中,对于相同的请求类Req,对于其中不同字段的校验要求是不同的,比如有些时候name字段是必须的,但其他情况下是非必须的,所以需要跟着服务或…
jQuery正则校验 银行卡号 //验证银行卡号,bankno为银行卡号function luhnCheck(){ var bankno = $.trim($("#bankNoInp").val());   var lastNum=bankno.substr(bankno.length-1,1);//取出最后一位(与luhn进行比较)​   var first15Num=bankno.substr(0,bankno.length-1);//前15或18位   var newArr=ne…
前台,传参数时,将数组对象转换成json串,后台java收到后用 JSONArray.fromObject 转成集合. 前台js:var params = {"FileNameList": JSON.stringify(fileNames)}; 前台正则校验: var reg = /^[\u4e00-\u9fa5A-Za-z0-9\-]{1,50}.txt$/;  //包含中文.字母大小写.数字        if (!reg.test(name)) {            laye…
from django.contrib import admin from django.urls import path from app01 import views urlpatterns = [ path('admin/', admin.site.urls), path('test/',views.test) ] from django.shortcuts import render,HttpResponse from django import forms from django.co…
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>checkNum.html</title> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <script typ…
1.最新的电话号码段: 移动:134(1349除外)135 136 137 138 139 147 150 151 152 157 158 159 182 183 184 187 188 联通: 130 131 132 155 156 185 186 145 电信:133 153 177 180 181 189 2.电话号码正则: 固话:([0-9]{3,4}-)?[0-9]{7,8} 手机:^((\+?86)|(\(\+86\)))?(13[012356789][0-9]{8}|15[0123…
问题现象: 原因: 肉眼看不出任何问题,实际原因“有问题的”待校验字符串第一个单引号和第一个数字之间有个不可见字符 (注:Chrome控制台.常见编辑器定位光标 “Backspace退格删除”时,第一次光标看不到移动,第二次才会删掉左边单引号 博客园推荐编辑器 设定js代码时  多余字符会被去掉  这个多了一个取出问题字符的思路) 求证: /^1\d{10}$/.test('‭13036396250') // 有问题的 /^1\d{10}$/.test('13036396250') // 没问题…
1. 开发中需要对etl组件统一进行input输入框校验,允许为空,可以不校验,默认校验长度和特殊字符,代码如下,记录以备复用. /** * 数据值校验工具类 */ var checkService = { // 不校验 none: function () { return true; }, //非空校验 isEmpty:function (str) { if (str == null || str == "") return false; }, // 只能输入数字[0-9] isDi…
原文链接:http://gongwen.sinaapp.com/article-126-cmd 这个其实不难,在网上多找一下总会有意外收获的.但是工欲善其事,必先利其器.我们需要了解一下身份证号的规则,知己知彼百战不殆. 身份证号有15位和18位长度两种,15位的时候,都是数字,但是18位长度的时候可能有校验位(X),所以只校验数字是不够的了. 另外身份证号可以看出一个人的年龄,出生所在地(身份证所在地?)等等,这些对我们来讲都是有用的数据. /* Author:yufulong Blog:ht…
package com.tmall.epp.web.module.util; import java.util.regex.Pattern; /** * 移动电话.固话.邮编的校验 * @since 2015.12.15 */ public class ImportCsvValidate { /** * 验证手机号码(支持国际格式,+86135xxxx...(中国内地),+00852137xxxx...(中国香港)) * @param mobile 移动.联通.电信运营商的号码段 *<p>移动…
正则常用校验工具类 import java.util.regex.Pattern; /** * @program: * @description: 校验工具类 * @author: xujingyang * @create: 2019-01-05 16:21 **/ public class ValidatorUtil { /** * 正则表达式:验证用户名 */ public static final String REGEX_USERNAME = "^[a-zA-Z]\\w{5,20}$&q…
1.非负整数: (^[1-9]+[0-9]*$)|(^[0]{1}$) 或 (^[1-9]+[0-9]*$)|0 2.非正整数: (^-[1-9]+[0-9]*$)|(^[0]{1}$) 或 (^-[1-9]+[0-9]*$)|0 3.非负浮点数: //前边是整数部分1-9开头的小数,后边是整数部分0开头的小数和0.00*. (^[1-9]+[0-9]*\.{1}[0-9]+$)|(^[0]{1}\.{1}[0-9]+$) 4.非正浮点数: (^-[1-9]+[0-9]*\.{1}[0-9]+$…
js校验身份证号[15位和18位] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 8…
app01/models.py: from django.db import models class UserInfo(models.Model): username = models.CharField(max_length=16) password = models.CharField(max_length=16) mobile = models.CharField(max_length=11) 创建了一个 UserInfo 表 reg2.html: <!DOCTYPE html> &l…
正则表达式: 单个字符的匹配规则如下: 多个字符的匹配规则如下: 复杂匹配规则主要有: 常用正则表达式校验规则: 一.校验数字的表达式 1.数字:^[0-9]*$ 2.n位的数字:^\d{n}$ 3.至少n位的数字:^\d{n,}$ 4.m-n位的数字:^\d{m,n}$ 5.零和非零开头的数字:^(0|[1-9][0-9]*)$ 6.非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$ 7.带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2…
package utils; import java.util.Random; import java.util.regex.Pattern; /** * Created with IntelliJ IDEA. * Description: * 手机号正则: ^1[34578][0-9]{9} * 生成手机号工具类 * * @author * Date: 2017-11-09 * Time: 10:24 */ public class PhoneNoGeneratorUtil { private…
数据的校验: 一.前台校验:JS校验 JS的校验不是必须的,JS可以被绕行,可以提升用户体验 二.后台校验:编码校验 必须的校验 三.校验的方式: 手动编码(不建议使用) 配置文件(支持) 手动编码的校验方式: 继承ActionSupport,在这个类中写校验方式. 重写validate方法,validate方法在其他业务方法之前执行 针对某个方法校验,需要在方法名应为:validate+方法名,如validateAdd()   validateModify()  validateExecute…
/** * 表单校验规则 * 不符合规则时,返回错误文案 * 符合规则时,返回false */ var rules = {} // 是否必填 rules.required = function (value) { return (!!value || value === 0) ? false : "请输入内容" }; // 最大字符长度 rules.maxLength = function (value, size) { var size = size || 256; return S…
介绍 双重校验锁是单例模式中,饿汉式的一种实现方式.因为有两次判空校验,所以叫双重校验锁,一次是在同步代码块外,一次是在同步代码块内. 为什么在同步代码块内还要再检验一次? 第一个if减少性能开销,第二个if避免生成多个对象实例. 现有三个线程A,B,C,假设线程A和线程B同时调用getSingleton()时,判断第一层if判断都为空,这时线程A先拿到锁,线程B在代码块外层等待.线程A进行第二层if判断,条件成立后new了一个新对象,创建完成,释放锁,线程B拿到锁,进行第二层if判断,sing…
上一部分总结了基础常用的js表单校验,包括原生以及框架,下面来总结这一个月涉及到的动态校验: 动态表单校验大致分为三种情况: 1. 首先是固定校验规则,但是表单组件是动态生成的,例如:在表单或者表格里有"增加"功能,增加一行,给新生成的表单组件添加校验规则. 2. 第二类就是组件固定,但是校验规则会随着其他条件的变化而变化,例如:基本的最常见的例子是确认密码的校验,判断第二次输入的密码与第一次输入是否一致. 3. 最后,比较复杂的就是以上两类情况的混合情况,动态生成的表单,且校验规则也…
util.js function isPhone(value) { if (!/^1(3|4|5|7|8)\d{9}$/.test(value)) { return false } else { return true } } //验证码六位数校验 function isSixNum(value) { if (!/^\d{6}$/.test(value)) { return false } else { return true } } //身份证号不严格校验 function isCard(va…
/** * @description 匹配 * t.cn 正确 * t-.cn 错误 * tt.cn正确 * -t.cn 错误 * t-t.cn 正确 * tst-test-tst.cn 正确 * tst--tt.cn -- 错误 * * * * @param $domain * * @return bool */ public function isDomain($domain) { return !empty($domain) && strpos($domain, '--') ===…