1. 程式人生 > >input框限制只能輸入正整數,邏輯與和或運算 有時需要限制文字框輸入內容的型別,本節分享下正則表示式限制文字框只能輸入數字、小數點、英文字母、漢字等程式碼。 例如,輸入大於0的正整數 程式碼

input框限制只能輸入正整數,邏輯與和或運算 有時需要限制文字框輸入內容的型別,本節分享下正則表示式限制文字框只能輸入數字、小數點、英文字母、漢字等程式碼。 例如,輸入大於0的正整數 程式碼

有時需要限制文字框輸入內容的型別,本節分享下正則表示式限制文字框只能輸入數字、小數點、英文字母、漢字等程式碼。

例如,輸入大於0的正整數

程式碼如下: <input onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}" onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}">


1,文字框只能輸入數字程式碼(小數點也不能輸入)

程式碼如下:
<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">

2,只能輸入數字,能輸小數點.

程式碼如下:
<input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')">
<input name=txt1 onchange="if(/\D/.test(this.value)){alert('只能輸入數字');this.value='';}">

3,數字和小數點方法二

程式碼如下:
<input type=text t_value="" o_value="" onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" onblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;this.o_value=this.value}">

封裝成單獨的函式:

程式碼如下: function keyPress(ob) {
 if (!ob.value.match(/^[\+\-]?\d*?\.?\d*?$/)) ob.value = ob.t_value; else ob.t_value = ob.value; if (ob.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/)) ob.o_value = ob.value;
}
function keyUp(ob) {
 if (!ob.value.match(/^[\+\-]?\d*?\.?\d*?$/)) ob.value = ob.t_value; else ob.t_value = ob.value; if (ob.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/)) ob.o_value = ob.value;
        }
function onBlur(ob) {
if(!ob.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))ob.value=ob.o_value;else{if(ob.value.match(/^\.\d+$/))ob.value=0+ob.value;if(ob.value.match(/^\.$/))ob.value=0;ob.o_value=ob.value};
}

只需在呼叫,傳入this物件即可!

4,只能輸入字母和漢字

程式碼如下:
<input onkeyup="value=value.replace(/[\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\d]/g,''))" maxlength=10 name="Numbers">

5,只能輸入英文字母和數字,不能輸入中文

 程式碼如下:

<input onkeyup="value=value.replace(/[^\w\.\/]/ig,'')">

6,只能輸入數字和英文

程式碼如下:
<input onKeyUp="value=value.replace(/[^\d|chun]/g,'')">

7,小數點後只能有最多兩位(數字,中文都可輸入),不能輸入字母和運算子號:

程式碼如下:
<input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false">

8,小數點後只能有最多兩位(數字,字母,中文都可輸入),可以輸入運算子號:

程式碼如下:
<input onkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')"> 9、ENTER鍵可以讓游標移到下一個輸入框 
<input type="text" onkeydown="if(event.keyCode==13)event.keyCode=9" />  10、正則匹配 ^[1-9]\d*$    //匹配正整數
^-[1-9]\d*$   //匹配負整數
^-?[1-9]\d*$   //匹配整數
^[1-9]\d*|0$  //匹配非負整數(正整數 + 0)
^-[1-9]\d*|0$   //匹配非正整數(負整數 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   //匹配正浮點數
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配負浮點數
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮點數
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$   //匹配非負浮點數(正浮點數 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //匹配非正浮點數(負浮點數 + 0)

相關推薦

input框限制只能輸入正整數,邏輯與和或運算 有時需要限制文字框輸入內容型別,本節分享下正則表示式限制文字框只能輸入數字、小數點、英文字母、漢字等程式碼。 例如,輸入大於0的正整數 程式碼

有時需要限制文字框輸入內容的型別,本節分享下正則表示式限制文字框只能輸入數字、小數點、英文字母、漢字等程式碼。 例如,輸入大於0的正整數 程式碼如下: <input onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^

input限制只能輸入整數邏輯運算

<input type=text t_value="" o_value="" onkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;i

輸入一行字元分別統計出其中英文字母空格數字其他字元的個數(用c++語言編寫程式)【寫的第1篇部落格很高興

#include<stdio.h> int main() { char ch; //定義ch為字元型變數 int a=0,b=0,c=0,d=0; //定義a,b,c,d為整型變數並賦初值 while(scanf("%c",&ch),ch!=’\n’) //輸入字元直到c

ACMNO.8輸入一行字元分別統計出其中英文字母空格數字其他字元的個數 輸入 一行字元 輸出 統計值 樣例輸入 aklsjflj123 sadf918u324 asdf91u32

題目描述 輸入一行字元,分別統計出其中英文字母、空格、數字和其他字元的個數。 輸入 一行字元 輸出 統計值 樣例輸入 aklsjflj123 sadf918u324 asdf91u32oasdf/.';123 樣例輸出 23 16 2 4

輸入一行字元,分別統計出其中英文字母空格數字其他字元的個數

#include <stdio.h> int main() { int a,b,c,d,ch; a=b=c=d=0;//計數器初始化為0. while((ch=getchar())!='\n')//迴圈讀取字元,到換行結束。

輸入一行字元分別統計出其中英文字母數字空格其他字元的個數

import java.util.Scanner; public class Main { public static void main(String[] args) { int digital = 0, character = 0,blank = 0,other = 0;

輸入一行字元分別統計出其中英文字母空格數字其他字元的個數

#include <stdio.h> void Fun(char c) {     int letters=0,blank=0,digit=0,other=0;     while ((c=getchar())!='\n')    {         if (c&

表示式限制只能輸入中文英文數字

無論移動端還是後臺都會遇到輸入框限制輸入特殊字元或者表情符;下面程式碼通過正則控制只能輸入中文、英文、數字 package pattern; import java.util.regex.Matcher; import java.util.regex.Pattern; publi

[Java]練習題007: 輸入一行字元分別統計出其中英文字母空格數字其它字元的個數

【程式7】題目:輸入一行字元,分別統計出其中英文字母、空格、數字和其它字元的個數。 import java.io.*; public class Test7 { public static void

java實現輸入一行字元分別統計出其中英文字母空格數字其它字元的個數

package excise;  /*輸入一行字元,分別統計出其中英文字母   、空格、數字的個數*/import  java.util.Scanner;  publicclass T007 {   

【程式17】 題目:輸入一行字元分別統計出其中英文字母空格數字其它字元的個數

注意 c >= 'a'&&c <= 'z' 與 'a' <= c <= 'z' 並不相同 運算子根據自左向右的結合行 先運算'a' <= c 值為1 or 0 然後再與‘z’比較 #define _CRT_SECURE_NO_WARNINGS

c語言:輸入一行字元分別統計出其中英文字母空格數字其他字元的個數

輸入一行字元,分別統計出其中英文字母、空格、數字和其他字元的個數。解:程式:#include <stdio.h>int main(){char c;int letters=0,space=0

[程式設計題]輸入一行字元分別統計出包含英文字母空格數字其它字元的個數

Talk is cheap, show me the code. 一、問題描述 輸入一行字元,分別統計出包含英文字母、空格、數字和其它字元的個數。 /** * 統計出英文字母字元的個數。

【華為OJ40】輸入一行字元分別統計出包含英文字母空格數字其它字元的個數

輸入描述: 輸入一行字串,可以有空格 輸出描述: 統計其中英文字元,空格字元,數字字元,其他字元的個數 輸入例子: 1qazxsw23 edcvfr45tgbn hy67uj m,ki89ol.\\/;p0-=\\][ 輸出例子: 26 3 10 12 impor

編寫一個程式輸入一行字元以回車結束分別統計出其中的英文字母空格數字其他字元的數

#include <stdio.h> int main() { int letter=0,space=0,digit=0,others=0; //宣告英文字母,空格,數字和其他字元的計數變數初始化為0 char c; //宣告接收字串的變數 wh

輸入一個字串分別統計出包含的英文字母數字空格其他字元的個數

/** * */ package testString; import java.util.Scanner; /** *@author: Administrator *@date: 2016-12-26 下午09:23:41 */ public class

輸入一行字元分別統計其中英文字母空格數字其他字元的個數

#include <stdio.h> #include <conio.h> int main(){   printf("請輸入一行字元:");   char num;   int num_yingwen=0,num_space=0,num_shuzi

【程式7】 題目:輸入一行字元分別統計出其中英文字母空格數字其它字元的個數

/* 2017年3月2日16:47:24 java基礎50道經典練習題 例7 Author:ZJY(&&) Purpose:對字串的資料的型別計數

java:輸入一行字元分別統計出其中英文字母空格數字其它字元的個數

程式分析:利用while語句,條件為輸入的字元不為’\n’. 程式碼如下: 第一種: import java.util.Scanner; public class Prog7_1{ pu

輸入一行字元以回車符作為輸入結束的標誌統計其中英文字母數字字元其他字元的個數多個字元以回車符結束回車符不作為有效字元有效字元個數不超過100

#include<stdio.h>#include<string.h>int main(){ char str[1000],ch; gets(str); int letter=0,digit=0,other=0;          //分別是英文,數字