精华内容
下载资源
问答
  • C++ 判断字符串是否全是数字

    千次阅读 2019-11-13 16:52:13
    C++ 判断字符串是否全是数字  在实际的工作中,需要提取程序中的字符串信息,但是程序中经常将一些数字当做字符串来进行处理,例如表盘的刻度信息,这时候就需要判断字符串是否全为数字,来进行真正意义上的字符串...

    转自:https://www.cnblogs.com/MakeView660/p/6077371.html

    C++ 判断字符串是否全是数字

      在实际的工作中,需要提取程序中的字符串信息,但是程序中经常将一些数字当做字符串来进行处理,例如表盘的刻度信息,这时候就需要判断字符串是否全为数字,来进行真正意义上的字符串提取。下面介绍了判断字符串是否全为数字的方法,仅供参考。

      方法一:判断字符的ASCII范围(数字的范围为48~57)

      

    复制代码

     1 #include <iostream>
     2 using namespace std;  
     3 
     4 bool AllisNum(string str); 
     5  
     6 int main( void )  
     7 {  
     8 
     9     string str1 = "wolaiqiao23";  
    10     string str2 = "1990";  
    11 
    12     if (AllisNum(str1))
    13     {
    14         cout<<"str1 is a num"<<endl;  
    15     }
    16     else
    17     {
    18         cout<<"str1 is not a num"<<endl;  
    19     }
    20 
    21     if (AllisNum(str2))
    22     {
    23         cout<<"str2 is a num"<<endl;  
    24     }
    25     else
    26     {
    27         cout<<"str2 is not a num"<<endl;  
    28     }
    29 
    30     cin.get();
    31     return 0;  
    32 }  
    33  
    34 bool AllisNum(string str)  
    35 {  
    36     for (int i = 0; i < str.size(); i++)
    37     {
    38         int tmp = (int)str[i];
    39         if (tmp >= 48 && tmp <= 57)
    40         {
    41             continue;
    42         }
    43         else
    44         {
    45             return false;
    46         }
    47     } 
    48     return true;
    49 }  

    复制代码

      方法二:使用C++提供的stringstream对象 

    复制代码

     1 #include <iostream>
     2 #include <sstream>  
     3 using namespace std;  
     4 
     5 bool isNum(string str);  
     6 
     7 int main( void )  
     8 {
     9     string str1 = "wolaiqiao23r";  
    10     string str2 = "1990";  
    11     if(isNum(str1))  
    12     {  
    13         cout << "str1 is a num" << endl;  
    14     }  
    15     else
    16     {  
    17         cout << "str1 is not a num" << endl;  
    18 
    19     }  
    20     if(isNum(str2))  
    21     {  
    22         cout<<"str2 is a num"<<endl;  
    23     }  
    24     else
    25     {  
    26         cout<<"str2 is not a num"<<endl;  
    27 
    28     }  
    29 
    30     cin.get();
    31     return 0;  
    32 }  
    33 
    34 bool isNum(string str)  
    35 {  
    36     stringstream sin(str);  
    37     double d;  
    38     char c;  
    39     if(!(sin >> d))  
    40     {
    41         return false;
    42     }
    43     if (sin >> c) 
    44     {
    45         return false;
    46     }  
    47     return true;  
    48 } 

    复制代码

      运行结果

      

    展开全文
  • js 判断字符串是否全是数字

    千次阅读 2019-12-13 14:47:23
    对于给定的的各种类型的数字表示(主要包含整数、小数、科学计数以及对应的正负数表示) var numbers = [ 123, +123, -123, '123', '+123', '-123', 123.4, +123.4, -123.4, '123.4', '+123.4', '-123.4', ...

    1.可能也有小数点

    var test = ['123.12', '.123', '123.', '123a'];
    var reg = /^[\d|\.]*$/;
    test.forEach((v) => {
      console.log(v, reg.test(v));
    });

    2. 除了正则,isNaN或许更好

    var test = ['123.12', '.123', '123.', '123a', '1e+43'];
    
    test.forEach((v) => {
      console.log(v, !isNaN(v));
    });

     不要直接使用 isNaN()

    function isNumber(value) {
      return !Number.isNaN(Number(value))
    }

     3.对于给定的的各种类型的数字表示(主要包含整数、小数、科学计数以及对应的正负数表示)

    var numbers = [
        123, +123, -123,
        '123', '+123', '-123',
        123.4, +123.4, -123.4,
        '123.4', '+123.4', '-123.4',
        123., +123., -123.,
        '123.', '+123.', '-123.',
        .123,, +.123, -.123,
        '.123', '+.123', '-.123',
        1.23e+20, +1.23e+20, -1.23e+20,
        '1.23e+20', '+1.23e+20', '-1.23e+20',
        '123.4.5',
        '123abc456',
        undefined
    ];

     3.1、使用!isNaN来进行判定。

    numbers.forEach((v) => {
      console.log(typeof(v), "\t", v, "\t", !isNaN(v));
    });

     结果:

    number      123      true
    number      123      true
    number      -123      true
    string      123      true
    string      +123      true
    string      -123      true
    number      123.4      true
    number      123.4      true
    number      -123.4      true
    string      123.4      true
    string      +123.4      true
    string      -123.4      true
    number      123      true
    number      123      true
    number      -123      true
    string      123.      true
    string      +123.      true
    string      -123.      true
    number      0.123      true
    number      0.123      true
    number      -0.123      true
    string      .123      true
    string      +.123      true
    string      -.123      true
    number      123000000000000000000      true
    number      123000000000000000000      true
    number      -123000000000000000000      true
    string      1.23e+20      true
    string      +1.23e+20      true
    string      -1.23e+20      true
    string      123.4.5      false
    string      123abc456      false
    undefined      undefined      false

    3.2、使用正则表达式来进行判定:整数,不带符号

    var reg = /^[\d]+$/;
    numbers.forEach((v) => {
      console.log(typeof(v), "\t", v, "\t", reg.test(v));
    });

    结果如下:

    number      123      true
    number      123      true
    number      -123      false
    string      123      true
    string      +123      false
    string      -123      false
    number      123.4      false
    number      123.4      false
    number      -123.4      false
    string      123.4      false
    string      +123.4      false
    string      -123.4      false
    number      123      true
    number      123      true
    number      -123      false
    string      123.      false
    string      +123.      false
    string      -123.      false
    number      0.123      false
    number      0.123      false
    number      -0.123      false
    string      .123      false
    string      +.123      false
    string      -.123      false
    number      123000000000000000000      true
    number      123000000000000000000      true
    number      -123000000000000000000      false
    string      1.23e+20      false
    string      +1.23e+20      false
    string      -1.23e+20      false
    string      123.4.5      false
    string      123abc456      false
    undefined      undefined      false

    3.3、使用正则表达式来进行判定:整数 + 小数 + 科学计数,带符号

    var reg = /^[\+-]?(\d+\.?\d*|\.\d+|\d\.\d+e\+\d+)$/;
    numbers.forEach((v) => {
      console.log(typeof(v), "\t", v, "\t", reg.test(v));
    });

    结果如下:

    number      123      true
    number      123      true
    number      -123      true
    string      123      true
    string      +123      true
    string      -123      true
    number      123.4      true
    number      123.4      true
    number      -123.4      true
    string      123.4      true
    string      +123.4      true
    string      -123.4      true
    number      123      true
    number      123      true
    number      -123      true
    string      123.      true
    string      +123.      true
    string      -123.      true
    number      0.123      true
    number      0.123      true
    number      -0.123      true
    string      .123      true
    string      +.123      true
    string      -.123      true
    number      123000000000000000000      true
    number      123000000000000000000      true
    number      -123000000000000000000      true
    string      1.23e+20      true
    string      +1.23e+20      true
    string      -1.23e+20      true
    string      123.4.5      false
    string      123abc456      false
    undefined      undefined      false

     

     

     

     

     

     

    展开全文
  • public boolean isNumeric(String str){ Pattern pattern = Pattern.compile("[0-9]*"); Matcher isNum = pattern.matcher(str); if( !isNum.matches() ){ return false;...[0-9]+”即可匹配所有数字
    public boolean isNumeric(String str){ 
       Pattern pattern = Pattern.compile("[0-9]*"); 
       Matcher isNum = pattern.matcher(str);
       if( !isNum.matches() ){
           return false; 
       } 
       return true; 
    }
    

    可以通过修改正则表达式实现校验负数,将正则表达式修改为“^-?[0-9]+”即可,修改为“-?[0-9]+.?[0-9]+”即可匹配所有数字。

    展开全文
  • .net你怎么判断字符串是否全是数字

    千次阅读 2010-02-08 11:27:00
    今天在写代码时突然想起测试经常用Microsoft.VisualBasic.Information.IsNumeric判断 url参数是否数字时的这个方法的效率 因为数字字符串是直接使用的,所以不需要转型,也就没有用tryparse 结果一测试吓一跳,...

    今天在写代码时突然想起测试经常用Microsoft.VisualBasic.Information.IsNumeric判断 url参数是否为数字时的这个方法的效率

    因为数字是字符串是直接使用的,所以不需要转型,也就没有用tryparse

    结果一测试吓一跳,这个方法的效率是如此的低,再测试了下tryparse还不错,正则的也比较差,

    没什么技术含量,看结果吧:

     

    先拓展下字符串:


     

     

     

    测试的代码:

     

     

     

    下面是我本机的测试结果



    isDigit      1234:0,True
    isNumberic  1234:173,True
    try parse    1234:21,True
    try catch    1234:23,True
    regex        1234:138,True

    isDigit      1234a:0,False
    isNumberic  1234a:204,False
    try parse    1234a:20,False
    try catch    1234a:5309,False
    regex        1234a:151,False

    isDigit      a1234:0,False
    isNumberic  a1234:191,False
    try parse    a1234:16,False
    try catch    a1234:5229,False
    regex        a1234:109,False

    isDigit      :0,False
    isNumberic  :0,False
    try parse    :0,False
    try catch    :1,False
    regex        :0,False

    isDigit      :0,False
    isNumberic  :1,False
    try parse    :0,False
    try catch    :1,False
    regex        :0,False

    结果:循环判断是否是数字字符效率是最高的

    而vbscript的方法效率比较低了

    顺便测试了下vbscript里的left和right方法效率也一样的低,还不及substring的十分之一

    所以vbscript里虽然有几个方法从名字看来比较好用,实际却比较杯具。

    展开全文
  • "^[A-Za-z0-9]+$" //由数字和26个英文字母组成的字符串  "^\w+$" //由数字、26个英文字母或者下划线组成的字符串  "^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$" //email地址  "^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w...
  • 在编程的时候,经常遇到...VB.NET中有个IsNumeric(object),C#中只有判断单个字符的Char.IsNumber(),IsNumeric可以判断double类型的数字字符串,但无法排除正负号和小数点,如果判断字符串是否是一个数的话用它挺合适
  • "^\w+$" //由数字、26个英文字母或者下划线组成的字符串 "^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$" //email地址 "^[a-zA-z]+://(\w+(-\w+) *)(\.(\w+(-\w+)* )) *(\?\S* )?$" //url /^(d{2}|d{4})-((0([ 1-9 ]{1}...
  • C#判断字符串是否数字字符串

    千次阅读 2018-12-27 09:59:45
    C#判断字符串是否数字字符串 在进行C#编程时候,有的时候我们需要判断一个字符串是否数字字符串,我们可以通过以下两种方法来实现。 【方法一】:使用 try{} catch{} 语句。 我们可以在try语句块中试图将string...
  • *主要功能:对于输入的字符串判断是不是符合题意的数字 *输入参数说明:一个string类型的值,表示用户输入的字符串 *输出说明:无输出 *返回值:返回0或1,0表示输入不符合规则,1表示输入符合规则 case:string ...
  • a = '1234' a.isdigit() # 是否全数字
  • Python-判断字符串是否全数字组成

    千次阅读 2019-02-24 10:59:32
    str.isdigit()
  • 怎么判断字符串是否全是数字和只有一个小数点呢?用正则和非正则
  • 判断是否全部是数字</summary> private bool IsNumeric(string str) { if (str == null || str.Length == 0) return false; ASCIIEncoding ascii = new ASCIIEncoding(); byte[] bytestr = ascii....
  • [java函数]判断字符串是否都是数字

    千次阅读 2018-10-23 16:37:10
    判断是否这个字符串都是数字,如果是,则可以进行其他操作。 函数: isNumeric() javaAPI 用法: 1、引入依赖包 compile 'org.apache.commons:commons-lang3:3.8.1' 2、伪代码 String s=&quot;...
  • 判断字符串是否为纯数字和字母

    千次阅读 2019-05-08 17:31:02
    /***********************************************************************/ / 判断字符串是否为纯数字和字母 / /******************************************************...
  • 判断字符串是否包含数字

    千次阅读 2015-05-04 13:57:19
    /** 判断字符串是否包含数字 **/ public static boolean isContainsNum(String input) { int len = input.length(); for (int i = 0; i < len; i++) { if (Character.isDigit(input.charAt(i))) { ...
  • linux c 判断字符串是否数字

    千次阅读 2020-01-16 19:32:58
    * @brief Function isdigitstr() 判断传入字符串是否全数字 * @param[in] char *str 字符串 * @retval 1: 全字符串,0:非全字符串 * @pre * @post */ static int isdigitstr(char *str) { return (st...
  • str.isnumeric(): True if 只包含数字;otherwise False。注意:此函数只能用于unicode string str.isdigit(): True if 只包含数字;otherwise False。 str.isalpha():True if 只包含字母;otherwise False。 ...
  • C#判断字符串是不是英文或数字

    千次阅读 2019-03-07 10:02:00
    C#判断字符串是不是英文或数字 利用正则。 u4e00-u9fa5;//中文 ^[A-Za-z]+$//英文字母 //截取冲击式样形状 public string SubStringForXingZhuang(string xingzhuangDetail) { ...
  • 判断字符串是否是有效数字的几种方法总结:
  • 判断字符串是不是数字

    千次阅读 2018-01-31 15:59:41
    stringByTrimmingCharactersInSet函数可以过滤字符串中的指定特殊符号,如下我们指定输入的字符串过滤掉十进制数字,只要判断剩下的字符串是否为空就行,为空则都是数字,反之不然。 - (BOOL)isNum:(NSString *)...
  • android 判断字符串是否数字

    千次阅读 2016-11-03 14:09:47
    /** * 判断字符串是否数字 */ public class StringIsNum { public static boolean isNumber(String str) { if (str.isEmpty()) { return false; } char[] chars = str.toCharArra
  • 由于没有进行对字符串中的数字进行非空和非数字判断,导致首页显示应用无法显示。需进行字符串判断 1使用正则表达式(推荐) public static boolean isNumeric(String str) { Pattern pattern = Pat
  • 前言 ...判断字符串是否数字(整形) 这个直接调用python的库就可以了哈,假设str为字符串 str.isdigit() 判断所有字符都是数字(整形) 返回值 True:该字符串都为数字;False:该字符串不...
  • Java判断字符串是字符或数字

    千次阅读 2013-04-22 11:51:52
    方法传入参数是String类型,方法判断字符串是否全是英文字符或全是数字: ①判断是否全是英文字符: public boolean isString(String s) { return s.matches("^[a-zA-Z]*"); } ②判断是否全是数字:...
  • java判断字符串是否是整形数字

    千次阅读 2017-06-22 09:02:58
    具体的代码实现如下:public static boolean isInt(String string) { if (string == null) return false; String regEx1 = "[\\-|\\+]?\\d+"; Pattern p; Matcher m; p = P
  • 赋值时,需要判断是否全数字:5,如果不是全数字,则需要用到分割。 str.isnumeric(): True if 只包含数字;otherwise False。注意:此函数只能用于unicode string str.isdigit(): True if 只包含数字;...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 529,960
精华内容 211,984
关键字:

判断字符串是否全是数字