精华内容
下载资源
问答
  • 比如var str = "10110101",如何判断str里包含几个1,几个0?
  • 如: 字符串 a="1,2,3";怎样判断a 中的逗号 有几个 len(a)-len(replace(a,",","")) 转载于:https://www.cnblogs.com/lauplay/p/3152128.html

    如: 字符串 a="1,2,3";

    怎样判断a 中的逗号 有几个

    len(a)-len(replace(a,",",""))

    转载于:https://www.cnblogs.com/lauplay/p/3152128.html

    展开全文
  • 如何判断字符串是否是整数 题目描述 写一方法,检查字符串是否是整数,如果是整数,那么返回其整数值。 分析与解答: 整数分为负数与非负数,负数只有一种表示方法,而非负数可以两种表示方法。例如:-123,123 ,...

    如何判断字符串是否是整数

    题目描述

    写一个方法,检查字符串是否是整数,如果是整数,那么返回其整数值。

    分析与解答:

    整数分为负数与非负数,负数只有一种表示方法,而非负数可以有两种表示方法。例如:-123,123 ,+ 123。因此在判断字符串是否为整数的时候,需要把这几个问题都考虑到。

    非递归法

    首先通过第一个字符的值确定整数的正负性,然后去掉符号位,把后面的字符串当做正数 来处理,处理完成后再根据正负性返回正确的结果。实现方法为从左到右遍历字符串计算整数 的值,以“ 123”为例,遍历到’ 1’的时候结果为 1,遍历到 2的时候结果为 110+2=12,遍 历到’3’的时候结果为 1210+3=123。其本质思路与方法一类似,根据这个思路实现代码如下:

    class test:
        def __init__(self):
            self.flag=None
        def getFlag(self):
            return self.flag
        def isnumber(self,c):
            return c>='0'and c<='9'
        def str2int(self,strs):
            if strs==None:
                self.flag=False
                print('不是数字')
                return -1
            self.flag=True
            res=0
            i=0
            minus=False
            if list(strs)[i]=='-':
                minus=True
                i+=1
            if list(strs)[i]=='+':
                i+=1
            while i<len(strs):
                if self.isnumber(list(strs)[i]):
                    res=res*10+ord(list(strs)[i])-ord('0')
                else:
                    self.flag=False
                    print('不是数字')
                    return -1
                i+=1
            return -res if minus else res
    if __name__=='__main__':
        t=test()
        s='-543'
        print(t.str2int(s))
    

    输出:
    -543

    展开全文
  • 如何判断字符串中含有日文字符

    千次阅读 2009-04-24 13:15:32
    最近做的东西这么一需要:判断个字符串中是否含有日文字符。最直观的想法就是使用正则表达式,因此上网一搜,找到了这 utf-8 对应的日文字符列表:http://ash.jp/code/unitbl21.htm 。满心欢喜,按照列表,...
    最近做的东西有这么一个需要:判断一个字符串中是否含有日文字符。最直观的想法就是使用正则表达式,因此上网一搜,找到了这个 utf-8 对应的日文字符列表:http://ash.jp/code/unitbl21.htm 。满心欢喜,按照列表,用utf-16指定的区间,再用正则表达式方式写了一个判断方法。

    测试了几个单词,正确。不过测试了几个汉字,发现不对。

    仔细看了看那个表,发现 字母和假名部分,utf-16是连续的,但是汉字和特殊字符部分,就不是连续的了。这就是用正则表达式也得累死人!

    再看看那个表,SJIS 编码的code是连续的,恩,可以使用区间,所以字符串得转换一下:

    str = new String(str.getBytes(), "UTF-8");
    byte[] bt = str.getBytes("SHIFT-JIS");


    不过那个表也真大阿!!就算用 shift-jis编码,正则表达式也不短!

    在输出 byte[] 的时候,发现如果是中文的话,那么 byte[] 的长度会小于4,而且不会被2 整除。于是乎,方法来了:

    return bt.length %2 == 0;


    这个方法可以判断一个字符是否为日文字符,那么判断字符串中是否包含日文字符也不难了。

    以下是测试类:


    assertTrue(CharacterUtil.isContainJapaneseCharacter("亜亜"));

    assertTrue(CharacterUtil.isContainJapaneseCharacter("お早う"));
    assertTrue(CharacterUtil.isContainJapaneseCharacter("学校"));
    assertTrue(CharacterUtil.isContainJapaneseCharacter("お早う,tom!"));
    assertFalse(CharacterUtil.isContainJapaneseCharacter("严"));
    assertFalse(CharacterUtil.isContainJapaneseCharacter("tom"));

    try {
    InputStream is = getClass().getClassLoader().getResourceAsStream("util/CharacterTest.utf_8");
    LineNumberReader ln = new LineNumberReader(new InputStreamReader(is, "UTF-8"));
    // 汉字 足
    assertTrue(CharacterUtil.isContainJapaneseCharacter(ln.readLine()));
    // あし 足
    assertTrue(CharacterUtil.isContainJapaneseCharacter(ln.readLine()));
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }


    其中比较特殊的是 “足”之类的文字,在 UNICODE 列表中,中日韩有几部分是公用一些汉字的。(CharacterTest.utf_8 是一个 utf-8 编码的文本文件,里面分别用汉字和日文写了“足”这个字 )。
    展开全文
  • 例如111,-111,+111,因此在判断字符串是否为整数的时候,需要把这几个问题都考虑到。下面说两个方法, 方法一:递归法:对于整数而言,例如111,可以看成11*10+1,而11又可以看成1*10+1。而-111可以看成(-11)*10-...

    题目描述:写一个方法,检查字符串是否为整数,那么返回整数值。

    分析与解答: 整数分为负数和非负数,负数只有一种表示方法,而非负数可以有两种表示方法。例如111,-111,+111,因此在判断字符串是否为整数的时候,需要把这几个问题都考虑到。下面说两个方法,

    方法一:递归法:对于整数而言,例如111,可以看成11*10+1,而11又可以看成1*10+1。而-111可以看成(-11)*10-1,-11可以看成(-1)*10-1.根据这个特点可以采用递归的方法求解,可以先根据字符串的第一个字符确定整数的正负,接着对字符串从右向左遍历.

    class Test:
        def __init__(self):
            self.flag = None
    
        def getFlag(self):
            return self.flag
    
        # 判断c是否是数字,如果是返回数字,且设置flag=True,否则返回False
        def isNumber(self, c):
            return c >= '0' and c <= '9'
    
        # 判断str是否是数字
        def strtoint(self, strs, length):
            if length > 1:
                if not self.isNumber(list(strs)[length - 1]):
                    # 不是数字
                    print("不是数字")
                    self.flag = False
                    return -1
    
                if list(strs)[0] == '-':
                    return self.strtoint(strs, length - 1) * 10 - (ord(list[length - 1]) - ord('0'))
                else:
                    return self.strtoint(strs, length - 1) * 10 + ord(list(strs)[length - 1]) - ord('0')
    
            else:
                if list(strs)[0] == '-':
                    return 0
                else:
                    if not self.isNumber(list(strs)[0]):
                        print("不是数字")
                        self.flag = False
                        return -1
                    return ord(list(strs)[0]) - ord('0')
    
        def strToint(self, s):
            self.flag = True
            if s == None or len(s) <= 0 or (list(s)[0] == '-' and len(s) == 1):
                print("不是数字")
                self.flag = False
                return -1
    
            if list(s)[0] == '+':
                return self.strToint(s[1:len(s)], len(s) - 1)
            else:
                return self.strToint(s, len(s))

    方法二:非递归法

    首先通过一个字符的值确定整数的正负性,然后去掉符号位,把后面的字符串当做正数来处理,处理完成后再根据正负性返回正确的结果。实现方法为从左向右遍历字符串计算整数的值,以“123”为例,遍历到'2'的时候结果为1*10+2=12,遍历到‘3’的时候结果为12*10+3=123。

    class Test:
        def __init__(self):
            self.flag = None
    
        def getFlag(self):
            return self.flag
    
        # 判断c是否是数字,如果是返回True,否则返回False
        def isNumber(self, c):
            return c >= "0" and c <= "9"
    
        def strToint(self, strs):
            if strs == None:
                self.flag = False
                print("不是数字")
                return -1
            self.flag = True
    
            res = 0
            i = 0
            minus = False  # 是否是负数
    
            if list(strs)[i] == '-':  # 结果是负数
                minus = True
                i += 1
    
            if list(strs)[i] == '+':  # 结果是正数
                i += 1
            while i < len(strs):
                if self.isNumber(list(strs)[i]):
                    res = res * 10 + ord(list(strs)[i]) - ord('0')
                else:
                    self.flag = False
                    print("不是数字")
                    return -1 
                i += 1
            return -res if minus else res
    
    
    if __name__ == "__main__":
        t = Test()
        s = "-543"
        print(t.strToint(s))
        s = "543"
        print(t.strToint(s))
        s = "+543"
        print(t.strToint(s))
        s = "++43"
        result = t.strToint(s)
        if t.getFlag():
            print(result)
    

     

    展开全文
  • 1. 前言 最近面试了家公司,体验了一下电话面试和今年火起来的视频...1. 如何判断个字符串中某个字符出现的次数? 2. 如何反转一个字符串? 注意:本文 GitHub:github.com/minfei-miffy/Java-mianshi-note 已收
  • 几个case问题还是存在: <pre><code>js console.assert(!isNumeric('')); console.assert(!isNumeric(' ')); console.assert(!isNumeric(' ')); console.assert(!isNumeric('\t...
  • 下面是一些常用的判断各种数字的正则表达式: 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$ 验证两位小数的正实...
  • 有几年工作经验的老兵,又应该如何保持和提升自身竞争力,转被动为主动? 就目前大环境来看,跳槽成功的难度比往年高很多。一明显的感受:今年的面试,无论一面还是二面,都很考验Java程序员的技术功底。 京东...
  • 天看到朋友在讨论这样的问题,如何快速匹给定的字符串
  • 如何消除字符串的内嵌括号 百度笔试题 题目描述: 给定一如下格式的字符串 : (1,(2,3,(4,(5,6),7)), 括号 内的元素可以是数字 ,也可以是另一括号,实现一算法消除嵌套的括号,例如把上面的表达式变成 (1,2,3,...
  • 近期在搞一 IP地址配置到内核 的问题。 命令行输入IP地址给内核,我的问题是如何确认这IP地址的格式...年来时不时就要写这种,网上也很多现成的东西,但基本上看起来都不优雅。 我也曾看过一些Linux内核,g...
  • 判断一段文本中是否包含一个字典中的某个词 布隆算法 什么情况下需要布隆过滤器?--避免高内存 先来看几个比较常见的例子 ...这几个例子一个共同的特点:如何判断一个元素是否存在一个集合中...
  • 就需要把这个查询出来的字符变成字符串,for循环成成字符与"1","2","3","4"这几个比较, 如果为true则就选中这个多选框checked="checked" 我的代码出来如下: String sourceStr="1,2,3,4,5"; String[] ...
  • 如果 我们某个方法中有几个判断判断的条件是 字符串比较,如何减少判断,直接定位到与 字符串相同的方法去执行? 下列方法 应该可行 MethodAddress:取得方法的地址,这方法需要是published的。 实例代码...
  • 今天,我们就来聊聊怎么从一个字符串中解析出地址。 以下种情况: 1.标准的格式 省,市,区... 2.没有省,但是包含以下级别地区的关键字。 3.没有省,也没有其他地区的关键字。 我们可以使用indexOf("...
  • 字符串相关心得

    2017-07-20 14:46:00
    1.个字符串如何判断个字符串中是否含有某个字符串? 答:比如string str = “abcdffdf.pdf”;如何判断个字符串中是否含有cd,cd出现了次。 可以用 strstr()来判断是否存在。存在时,可以跳过第一...
  • 现在个字符串,S1和S2,现在想知道S1中是否S2。如何判断? 当然,最先肯定会想到的是indexOf()函数,亦或是正则表达式。然而,当需要我们自己编写算法时,也不能傻了眼,接下来认识一下种编写匹配算法的方式...
  • Java字符串的存储方式

    千次阅读 2018-12-28 05:24:51
      Java中的字符串只能位于内存中的两区域:常量池... 那么如何判断字符串到底位于哪一区域呢? 以下种情形。 情形一 String s="123"; 复制代码  虚拟机在处理字面量"123"时,首先在本地栈中创建字符串"1...
  • 那么如何判断字符串到底位于哪一区域呢?以下种情形。 情形一 String s = "123"; 虚拟机在处理字面量"123"时,首先在本地栈中创建字符串"123",随后对其调用本地方法intern()。intern方法的作用是检查...
  • 如果某个表的字段少还好, 有几十甚至更多字段就抓瞎了,如何快速判断哪个字段超长呢? 先创建一存储过程: IF OBJECT_ID('Proc_Util_GetLenOverflowColumns') IS NOT NULL DROP PROC Proc_Util_...
  • 什么?字符串为空?

    2020-07-17 20:34:00
    在做前端项目中经常会遇到字符串的处理操作,在处理之前需要判断字符串是否为空,字符串为空的情况很多,今天来总结一下该如何进行判断 1.if(!value) 当字符串为null,undefined,NaN,0,false,""这几个时,if...
  • ansi格式的TXT字符串在ios如何解析

    千次阅读 2016-03-11 09:46:27
    big,utf16 little), ansi编码(gb2312等),另外起始字节要分有无bom,所以你得先根据每个编码的不同从头几个字节判断该文件为哪种编码,然后再用对应的解码去解。 unicode解码就不说了,ansi解码苹果也对应的解码...
  • C 语言实现了下字符串的基本操作,包括求长度、复制、拼接、判断是否相等、全大写、全小写几个函数,完整代码如下,其中还有些不合理之处,暂时没想到如何修改,对于理解指针和字符数组还是一定能帮助的。...
  • 如何实现strlen的功能呢 注意的点: 如果知道数组的大小用for循环,不知道用while循环,每个字符串后边都反斜杠0(\0),通过它我们可以判断数组的大下。 ...
  • 需求 每月定期拉json数据...若要实现自动化拉数据,写入文件,需要考虑到如何判断有几天,周期范围要怎么去自动填写,需要用到time包来实现 注意:以下代码仅供参考,不可直接复制粘贴运行(删除了一些获取j

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 438
精华内容 175
关键字:

如何判断字符串有几个字符