当前位置: 首页 > news >正文

react开发技巧

/* eslint-disable no-useless-escape */

const Validator = {

isEmail: /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/, // 校验邮箱

isPhoneNumber: /^1[3456789]\d{9}$/, // 手机号码验证

isMobileNumber: /^(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$/, // 固定电话号码验证

isIdCard:

/(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}$)/, // 身份证号码验证

isMoney: /^([1-9][\d]{0,7}|0)(\.[\d]{1,2})?$/, // 金额格式验证(最大金额99999999.99)

isCreditCard: /^[0-9]*$/, // 银行卡号验证

isBankCard: /^([1-9]{1})(\d{15}|\d{16}|\d{17}|\d{18}|\d{19})$/, // 银行卡号

isZHCNUserName: /^([\u4e00-\u9fa5]{1,20}|[a-zA-Z\.\s]{1,20})$/, // 大陆居民姓名验证

isEmoJi: /\uD83C[\uDF00-\uDFFF]|\uD83D[\uDC00-\uDE4F]/, // 表情验证

isChinese: /[^\u4e00-\u9fa5]+$/, // 汉字校验--数字也会返回true

isDecimalTwo: /^[0-9]+(.[0-9]{2})?$/, // 两位小数正实数校验

isDecimalOneOrTwo: /^[0-9]+(.[0-9]{1,2})?$/, // 1~2位小数正实数校验

isEnSpecialChar: /[`~!@#$%^&*()_+<>?:"{},.\/;'[\]]/im, // 英文特殊字符校验

isCnSpecialChar: /[·!#¥(——):;“”‘、,|《。》?、【】[\]]/im, // 中文特殊字符校验

isHighPassword: /^(?=.*[a-zA-Z])(?=.*\d).{8,16}$/, // 8-16位由数字字母(两者都要有)的密码校验

isPassword: /^[A-Za-z0-9`~!@#$%^&*()_+<>?:"{},.\/;'[\]]+$/, // 由数字字母英文特殊字符任意组合的密码校验

isNumber: /^[1-9]\d*$/, // 匹配正整数

isNumberWithZero: /^[0-9]\d*$/, // 匹配整数

phoneReg:

/^(13[0-9]|16[0-9]|19[0-9]|147|15[0-9]|17[6-8]|18[0-9])\d{8}|17[0-9]\d{8}$/, // 匹配手机号

idCardReg: /(^\d{18}$)|(^\d{17}(\d|X|x)$)/, // 匹配身份证

mailReg: /^(\w)+(\.\w+)*@(\w)+((\.\w+)+)$/, // 匹配邮箱

bankCardReg: /^\d{16}|\d{19}$/, // 匹配银行卡

payTypeMap: { extend: '居间费', buy: '转包服务费', outsource: '人事代理费' },

payChannelMap: {

mybank: '网商银行',

alipay: '支付宝',

citicbank: '中信银行',

merchantsbank: '招商银行',

},

zeroToHundred: /^(\d{1,2}(\.\d{1,6})?|100)$/, // 0到100的数字最多保留6位小数

isNumberWithEn: /^[A-Za-z0-9]+$/, // 数字和英文

hasnotSpecial: /^[\u4E00-\u9FA5A-Za-z0-9]+$/, // 不包含特殊字符

};

export default Validator;

相关文章:

react开发技巧

/* eslint-disable no-useless-escape */ const Validator { isEmail: /^([a-zA-Z0-9_\.\-])\(([a-zA-Z0-9\-])\.)([a-zA-Z0-9]{2,4})$/, // 校验邮箱 isPhoneNumber: /^1[3456789]\d{9}$/, // 手机号码验证 isMobileNumber: /^(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}$/, //…...

HarmonyOS第一课——HarmonyOS介绍

HarmonyOS第一课 HarmonyOS介绍 HarmonyOS是新一代的智能终端操作系统&#xff08;泛终端服务的载体&#xff09;&#xff1b; 智慧互联协同&#xff0c;全场景交互体验&#xff1b; 核心技术理念&#xff1a; 一次开发 多次部署&#xff1a; 预览 可视化开发UI适配 事件交…...

XCode16中c++头文件找不到解决办法

XCode16中新建Framework&#xff0c;写完自己的c代码后&#xff0c;提示“<string> file not found”等诸如此类找不到c头文件的错误。 工程结构如下&#xff1a; App是测试应用&#xff0c;BoostMath是Framework。基本结构可以参考官方demo&#xff1a;Mix Swift and …...

CSS - 保姆级面试基础扫盲版本一

盒子模型 盒子模型定义&#xff1a; 当对一个盒子模型进行文档布局的时候&#xff0c;浏览器的渲染引擎会根据标准之一的CSS盒子模型&#xff08;CSS basic box model&#xff09;&#xff0c;将所有元素表示成一个个矩阵盒子。 一个盒子通常由四部分组成&#xff1a;border p…...

51c自动驾驶~合集2

我自己的原文哦~ https://blog.51cto.com/whaosoft/11491137 #BEVWorld BEV潜在空间构建多模态世界模型&#xff0c;全面理解自动驾驶~一、引言 世界模型建模了有关环境的知识&#xff0c;其可以通过给定的条件对未来进行合理的想象。未来想象要求世界模型具有物理规律的理解…...

Redis后台任务有哪些

Redis后台任务 为了有更好的性能表现&#xff0c;redis对于一些比较耗时的操作会异步执行&#xff0c;不阻塞线上请求。文章从源码(redis7.0)来看&#xff0c;aof、rdb文件的关闭&#xff0c;aof文件的刷盘以及部分内存释放会采用异步方式&#xff0c;在后台线程中执行。接下来…...

TPair<TKey, TValue> 键值对

在 Delphi&#xff08;或更准确地说是 Object Pascal&#xff0c;Delphi 的编程语言&#xff09;中&#xff0c;TList<T> 是泛型列表的一个实现&#xff0c;其中 T 是列表中元素的类型。TPair<TKey, TValue> 是一个包含两个元素的记录&#xff08;record&#xff0…...

【杂谈】城市规划教育的危与机

城市规划教育的危与机 &#xff08;赵燕菁 原文为作者在 第21届中国城市规划学科发展论坛上的发言&#xff0c;有删减和改动&#xff09;如有侵权&#xff0c;立即删除 过去几年&#xff0c;尤其是从2022年后房地产市场的下行开始&#xff0c;中国的城市规划陷入前所未有的危…...

金融工程--pine-script 入门

背景 脚本基本组成 指标 常见的趋势类指标&#xff1a;均线类(MAs)、支撑/压力位(Support/Resistance)、趋势线(Trend Lines)、趋势通道(Trend Channels)、一目均衡表(Ichimoku)和 艾略特波浪(ElliotWave)。 均线指标 策略 策略种类 在TradingView上&#xff0c;有许多交易…...

Vue3 跨标签页或跨窗口通信

在 Vue 应用中&#xff0c;跨标签页或跨窗口的通信通常涉及到两个或多个浏览器标签页之间的信息共享。由于每个标签页或窗口都是独立的 JavaScript 执行环境&#xff0c;它们不能直接通过 Vue 或其他 JavaScript 库来直接相互通信。但是&#xff0c;有一些方法可以实现这种跨标…...

Ollama: 使用Langchain的OllamaFunctions

1. 引言 Function call Langchain的Ollama 的实验性包装器OllamaFunctions&#xff0c;提供与 OpenAI Functions 相同的 API。因为网络的原因&#xff0c;OpenAI Functions不一定能访问&#xff0c;但如果能通过Ollama部署的本地模型实现相关的函数调用&#xff0c;还是有很好…...

java质数的判断 C语言指针变量的使用

1. public static void main(String[] args) {Scanner scnew Scanner(System.in);System.out.println("请输入一个值");int num sc.nextInt();boolean flagtrue;for (int i2;i<num;i){if (num%i0){flagfalse;break;}}if (flag){System.out.println(num"是一…...

TensorFlow面试整理-TensorFlow 数据处理

在 TensorFlow 中,数据处理是构建和训练深度学习模型的重要环节。高效地管理、预处理和增强数据可以显著提高模型的训练效率和性能。TensorFlow 提供了强大的 tf.data API 来帮助处理各种数据集。下面是 TensorFlow 数据处理的详细介绍: 1. tf.data.Dataset API tf.data API …...

vue路由的基本使用

vue路由的基本使用 vue-router简介一、路由配置和使用1、安装2、创建路由实例2、在组件中引用路由 router-view ,如APP根组件中直接引用&#xff1a;3、最后还需要把路由挂载到APP实例中&#xff0c;在main.js中注册路由&#xff1a; 二、路由重定向与别名三、声明式导航1、传统…...

数据结构分类

数据结构(data structure)是计算机存储、组织数据的方式&#xff0c;是带有结构特性的数据元素的集合。是相互之间存在一种或多种特定关系的数据元素的集合&#xff0c;即带“结构”的数据元素的集合。这种“结构”指的是数据元素之间存在的关系&#xff0c;分为逻辑结构和存储…...

【STM32】 TCP/IP通信协议--LwIP介绍

LwIP&#xff08;Lightweight IP&#xff09;是一个轻量级的TCP/IP协议栈&#xff0c;专为嵌入式系统设计&#xff0c;以较小的资源消耗实现完整的网络功能。本文将详细介绍LwIP的基本概念、特点、与TCP/IP的区别以及如何在STM32上使用LwIP实现TCP/IP通信。 1. LwIP的定义和设…...

一些面试题整理

第一章、基础 以下是对上述10道面试题的参考答案&#xff1a; 一、Java语言及性能调优 答案&#xff1a; 线程安全问题是指多个线程同时访问共享资源时可能出现的数据不一致或错误的情况。例如&#xff0c;多个线程同时对一个共享变量进行写操作&#xff0c;如果没有适当的同…...

端口号和ip地址一样吗?区别是什么

在网络通信的世界里&#xff0c;端口号和IP地址是两个不可或缺的概念&#xff0c;它们各自扮演着独特的角色&#xff0c;共同维系着数据在网络中的有序传输。然而&#xff0c;对于许多初学者而言&#xff0c;这两者往往容易被混淆&#xff0c;认为它们是同一事物的不同表述。那…...

深入探讨全流量回溯分析与网络性能监控系统

AnaTraf 网络性能监控系统NPM | 全流量回溯分析 | 网络故障排除工具 随着数据量的急剧增加&#xff0c;传统的网络监控手段面临诸多挑战。在此背景下&#xff0c;全流量回溯分析和网络性能监控系统成为了保障网络正常运作的重要工具。本文将围绕这两个关键词&#xff0c;探讨它…...

python机器人编程——一种3D骨架动画逆解算法的启示(上)

目录 一、前言二、fabrik 算法三、python实现结论PS.扩展阅读ps1.六自由度机器人相关文章资源ps2.四轴机器相关文章资源ps3.移动小车相关文章资源ps3.wifi小车控制相关文章资源 一、前言 我们用blender等3D动画软件时&#xff0c;会用到骨骼的动画&#xff0c;通过逆向IK动力学…...

OpenClaw多模型管理:同时接入百川2-13B-4bits与其他开源大模型

OpenClaw多模型管理&#xff1a;同时接入百川2-13B-4bits与其他开源大模型 1. 为什么需要多模型管理&#xff1f; 去年冬天&#xff0c;我尝试用OpenClaw自动化处理一批技术文档的翻译和摘要任务时&#xff0c;遇到了一个典型问题&#xff1a;当处理简单段落翻译时&#xff0…...

3种方法让加密音乐重获自由:Unlock Music浏览器解密工具详解

3种方法让加密音乐重获自由&#xff1a;Unlock Music浏览器解密工具详解 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库&#xff1a; 1. https://github.com/unlock-music/unlock-music &#xff1b;2. https://git.unlock-music.dev/um/web 项目地址:…...

Imatest SFR模块实战:从ISO 12233测试卡到MTF指标解析

1. Imatest SFR模块入门指南 第一次接触Imatest SFR模块时&#xff0c;我完全被各种专业术语搞懵了。后来在实际项目中反复使用才发现&#xff0c;这其实就是个"相机体检仪"——通过分析ISO 12233测试卡上的斜边&#xff0c;就能给相机镜头做个全面体检。想象一下医生…...

1.1 AI技术全景图:从传统ML到大模型

AI技术全景图&#xff1a;从传统ML到大模型本文适合谁&#xff1a;完全没有AI背景的读者。读完这篇&#xff0c;你会知道"AI/机器学习/深度学习/大模型"这几个词是什么关系&#xff0c;以及你将要学的东西在整个AI世界里处于什么位置。AI发展经历了三个时代——本文带…...

利用快马平台快速构建免费节点测试工具原型,十分钟完成开发

今天想和大家分享一个快速验证免费节点可用性的小工具开发过程。作为一个经常需要测试代理节点的开发者&#xff0c;手动一个个验证实在太费时间&#xff0c;于是我用InsCode(快马)平台快速搭建了一个原型工具&#xff0c;整个过程比想象中简单很多。 需求分析 免费节点测试工具…...

低延迟多场景的Windows音频捕获解决方案:win-capture-audio实战指南

低延迟多场景的Windows音频捕获解决方案&#xff1a;win-capture-audio实战指南 【免费下载链接】win-capture-audio An OBS plugin that allows capture of independant application audio streams on Windows, in a similar fashion to OBSs game capture and Discords appli…...

MATLAB中扩展卡尔曼滤波与无迹卡尔曼滤波源代码:一键运行,误差对比及显示最大误差数字图像程...

MATLAB编写的EKF和UKF滤波程序源代码 扩展卡尔曼滤波、无迹卡尔曼滤波的MATLAB程序&#xff0c;有误差对比图像和最大误差数字的显示。 只有一个m文件&#xff0c;打开就能运行。 带中文注释。直接双击EKFUKFComparison.m就能看到两个滤波器在非线性系统里的较量。这个文件里塞…...

2026降AI率工具红黑榜:降AI率工具怎么选?一篇讲透

千笔AI、ThouPen、豆包是当前适配国内高校AI率检测规范的优质选择&#xff1b;需警惕低质免费工具、无正规检测对接、改写痕迹生硬的平台&#xff1b;建议按降AI效果、学术合规性、使用成本三维度筛选&#xff0c;优先匹配A-B-C模型。 一、红榜&#xff1a;10 款高分论文降AI率…...

6种专业计时模式:让OBS直播时间管理变得如此简单

6种专业计时模式&#xff1a;让OBS直播时间管理变得如此简单 【免费下载链接】obs-advanced-timer 项目地址: https://gitcode.com/gh_mirrors/ob/obs-advanced-timer 想让你的直播画面看起来更加专业吗&#xff1f;OBS高级计时器正是你需要的秘密武器&#xff01;这款…...

华为AR路由器VRRP配置实战:从单点故障到流量黑洞,一个实验全搞定

华为AR路由器VRRP高可用实战&#xff1a;规避单点故障与流量黑洞的深度解析 在现网架构中&#xff0c;网关设备的可靠性直接决定了整个网络的稳定性。想象一下这样的场景&#xff1a;当核心网关突然宕机&#xff0c;整个办公区的网络瞬间瘫痪&#xff0c;业务系统中断&#xff…...