精华内容
下载资源
问答
  • 匹配中文2.1匹配字符串中的第一个连续的中文片段2.2匹配字符串中的所有中文字符2.3匹配字符串中的所有中文字符并一起输出 正则表达式 正则函数 用处 ‘[^(0-9)]’ re.sub 提取字符串中所有数字 ‘[\u4...


    正则表达式 正则函数 用处
    ‘[^(0-9)]’ re.sub 提取字符串中所有数字
    ‘[\u4e00-\u9fa5]*’ re.search 匹配字符中的第一个连续的中文片段
    ‘[\u4e00-\u9fa5]’ re.findall 匹配字符串中的所有中文字符
    ‘[\u4e00-\u9fa5]+’ re.findall 匹配字符串中的所有中文字符并一起输出

    1.匹配数字

    1.1提取字符串中所有的数字

    import re
    
    num_var = '23r4g'
    num_spl = re.sub('[^(0-9)]', '', num_var)
    
    print(num_spl)
    # 234
    

    2.匹配中文

    2.1匹配字符串中的第一个连续的中文片段

    import re
    
    char_var = '小兔子,xiaotuzi'
    char_spl = re.search('[\u4e00-\u9fa5]*', char_var)
    
    print(char_spl)
    # <re.Match object; span=(0, 3), match='小兔子'>
    

    2.2匹配字符串中的所有中文字符

    import re
    
    char_var = '小兔子,xiaotuzi'
    char_all = re.findall('[\u4e00-\u9fa5]', char_var)
    
    print(char_all)
    # ['小', '兔', '子']
    

    2.3匹配字符串中的所有中文字符并一起输出

    import re
    
    char_var = '小兔子,xiaotuzi'
    char_all_out = re.findall('[\u4e00-\u9fa5]+', char_var)
    
    print(char_all_out)
    # ['小兔子']
    
    展开全文
  • /bin/env python#-*- coding:utf-8 -*-import urllibimport os,sys,jsonimport sslcontext = ssl._create_unverified_context()def GetWorkOrder(ip):try:#ip = sys.argv[1]len(ip) != 1except:print "error .....

    #!/bin/env python

    #-*- coding:utf-8 -*-

    import urllib

    import os,sys,json

    import ssl

    context = ssl._create_unverified_context()

    def GetWorkOrder(ip):

    try:

    #ip = sys.argv[1]

    len(ip) != 1

    except:

    print "error paras!!"

    else:

    #bxurl="**" + ip + "&type=fwqbx"

    zjurl="***" + ip + "&type=fwqzj"

    #bx = urllib.urlopen(bxurl, context=context)

    zj = urllib.urlopen(zjurl, context=context)

    #bxr = bx.read(bx)

    zjr = zj.read(zj)

    #lbxr = json.loads(bxr)

    lzjr = json.loads(zjr)

    #print json.dumps(lbxr,ensure_ascii=False,sort_keys=True, indent=2)

    #zjlist=json.dumps(lzjr,ensure_ascii=False,sort_keys=True, indent=2)

    #print zjlist

    try:

    #t1= lzjr[0]["data"]["detail"][0]["sn"]

    t2= lzjr[0]["data"]["detail"][0]["statusname"]

    #print t2

    return t2

    #return t2.decode("utf-8").encode("gbk")

    except:

    pass

    #GetWorkOrder()

    def sn_GetWorkOrder(ip):

    try:

    #ip = sys.argv[1]

    len(ip) != 1

    except:

    print "error paras!!"

    else:

    #bxurl="https://portal.qiyi.domain/newportal/?appkey=getprolist&ip=" + ip + "&type=fwqbx"

    zjurl="https://portal.qiyi.domain/newportal/?appkey=getprolist&ip=" + ip + "&type=fwqzj"

    #bx = urllib.urlopen(bxurl, context=context)

    zj = urllib.urlopen(zjurl, context=context)

    #bxr = bx.read(bx)

    zjr = zj.read(zj)

    #lbxr = json.loads(bxr)

    lzjr = json.loads(zjr)

    #print json.dumps(lbxr,ensure_ascii=False,sort_keys=True, indent=2)

    #zjlist=json.dumps(lzjr,ensure_ascii=False,sort_keys=True, indent=2)

    #print zjlist

    try:

    t1= lzjr[0]["data"]["detail"][0]["sn"]

    #t2= lzjr[0]["data"]["detail"][0]["statusname"]

    return t1

    except:

    pass

    if __name__ == "__main__":

    #tt = "结束".decode("utf-8").encode("gbk")

    #print tt

    input = open("data","r")

    while True:

    tmp_ip = input.readline()

    #print tmp_ip

    status = GetWorkOrder(tmp_ip)

    #status = status.decode("utf-8").encode("gbk")

    try:

    print len(status)

    except:

    pass

    try:

    if len(status) != 2:

    tmp_sn = sn_GetWorkOrder(tmp_ip)

    #print tmp_sn

    cmd1 = "echo "+"""+str(tmp_ip)+str(tmp_sn)+"""+ " >> /tmp/b.txt"

    #print cmd1

    os.system(cmd1)

    except:

    pass

    input.close()

    展开全文
  • 主要介绍了Python使用中文正则表达式匹配指定中文字符串的方法,结合实例形式分析了Python正则匹配及字符编码相关操作技巧,需要的朋友可以参考下
  • #!/bin/env python #-*- coding:utf-8 -*- import urllib import os,sys,json import ssl context = ssl._create_unverified_context() def GetWorkOrder(ip): try: ...
    #!/bin/env python
    #-*- coding:utf-8 -*-
    
    import urllib
    import os,sys,json
    import ssl
    context = ssl._create_unverified_context()
    
    def GetWorkOrder(ip):
           
            try:
                    #ip = sys.argv[1]
                    len(ip) != 1
            except:
                    print "error paras!!"
            else:
                    #bxurl='**' + ip + '&type=fwqbx'
                    zjurl='***' + ip + '&type=fwqzj'
                    #bx = urllib.urlopen(bxurl, context=context)
                    zj = urllib.urlopen(zjurl, context=context)
                    #bxr = bx.read(bx)
                    zjr = zj.read(zj)
                    #lbxr = json.loads(bxr)
                    lzjr = json.loads(zjr)
                    #print json.dumps(lbxr,ensure_ascii=False,sort_keys=True, indent=2)
                    #zjlist=json.dumps(lzjr,ensure_ascii=False,sort_keys=True, indent=2)
                    #print zjlist
                    try:
                           #t1= lzjr[0]['data']['detail'][0]['sn']
                           t2= lzjr[0]['data']['detail'][0]['statusname']
                           #print t2
                           return t2
                           #return t2.decode('utf-8').encode('gbk')
                    except:
                           pass
    
    #GetWorkOrder()
    def sn_GetWorkOrder(ip):
            try:
                    #ip = sys.argv[1]
                    len(ip) != 1
            except:
                    print "error paras!!"
            else:
                    #bxurl='https://portal.qiyi.domain/newportal/?appkey=getprolist&ip=' + ip + '&type=fwqbx'
                    zjurl='https://portal.qiyi.domain/newportal/?appkey=getprolist&ip=' + ip + '&type=fwqzj'
                    #bx = urllib.urlopen(bxurl, context=context)
                    zj = urllib.urlopen(zjurl, context=context)
                    #bxr = bx.read(bx)
                    zjr = zj.read(zj)
                    #lbxr = json.loads(bxr)
                    lzjr = json.loads(zjr)
                    #print json.dumps(lbxr,ensure_ascii=False,sort_keys=True, indent=2)
                    #zjlist=json.dumps(lzjr,ensure_ascii=False,sort_keys=True, indent=2)
                    #print zjlist
                    try:
                           t1= lzjr[0]['data']['detail'][0]['sn']
                           #t2= lzjr[0]['data']['detail'][0]['statusname']
                           return t1
                    except:
                           pass
    
    
    if __name__ == '__main__':
      #tt = '结束'.decode('utf-8').encode('gbk')
      #print tt
      input = open('data','r')
      while True:
         tmp_ip = input.readline()
         #print tmp_ip
         status = GetWorkOrder(tmp_ip)
         #status = status.decode('utf-8').encode('gbk')
         try:
            print len(status)
         except:
            pass
         try:
            if len(status) != 2:
       
               tmp_sn = sn_GetWorkOrder(tmp_ip)
               #print tmp_sn
               cmd1 = "echo "+'"'+str(tmp_ip)+str(tmp_sn)+'"'+ " >> /tmp/b.txt"
               #print cmd1
               os.system(cmd1)
         except:
            pass
    
      input.close()
    

      

    刚开始使用中文匹配的,后来改变了策略。

    转载于:https://www.cnblogs.com/bill2014/p/8301162.html

    展开全文
  • 很多朋友在做爬虫和数据采集的时候会遇见字符中存在很多的特殊字符,影响数据的质量。今天给大家写一段代码用于数据清洗: info = '' str = '<@ba.rem>可以在下列状态和初始状态间切换:</>\n攻击范围&...

    很多朋友在做爬虫和数据采集的时候会遇见字符中存在很多的特殊字符,影响数据的质量。今天给大家写一段代码用于数据清洗:

    方法一:

    info = ''
    str = '<@ba.rem>可以在下列状态和初始状态间切换:</>\n攻击范围<@ba.vdown>缩小</>,防御力<@ba.vup>+{0.35}</>,每秒恢复最大生命的<@ba.vup>{HP_RECOVERY_PER_SEC_BY_MAX_HP_RATIO:0.0%}</>'.replace('<@ba.rem>', '').replace('<@ba.vdown>', '').replace('<@ba.vup>', '')
    for n in range(0, len(str)-1):
        if '\u4e00' <= str[n] <= '\u9fff' or str[n] in ':,,:0123456789.%':
            info += str[n]
    print(info)
    

    输出结果:

    可以在下列状态和初始状态间切换:攻击范围缩小,防御力0.35,每秒恢复最大生命的:0.0%
    

    此程序是根据下标提取出每一个字符,对字符进行中文验证和符号验证。

    方法二:

    去掉所有表情包

    pip install emoji
    
    import emoji
    emoji.demojize(str)
    

    方法三:

    去除所有非汉子的文本,并将繁体转化为简体

    pip install zhconv
    
    from re import sub
    import zhconv,emoji
    hans = sub("[^\u4e00-\u9fa5]", '', zhconv.convert(str, 'zh-hans'))
    
    展开全文
  • import re text = "OK谢谢" a = re.findall('[\u4e00-\u9fa5a-zA-Z0-9]+', text, re.S) #只要字符串中的中文,字母,数字 a = "".join(a) print(a)
  • re.match('^[\u4e00-\u9fa5|,。;?]+\?$','你好哈人日你,妈我。我?;们我為啥說在張志這?') 这演示了简体,繁体,中文标点符号等等。可以看出python3.x对于中文字符串匹配是可以运行得很好滴
  • 本文实例讲述了Python使用中文正则表达式匹配指定中文字符串的方法。分享给大家供大家参考,具体如下: 业务场景: 从中文字句中匹配出指定的中文子字符串 .这样的情况我在工作中遇到非常多, 特梳理总结如下. ...
  • Python中使用中文正则表达式匹配指定的中文字符串

    万次阅读 多人点赞 2016-03-30 22:26:49
    业务场景如下: 从中文字句中匹配出指定的中文字符串
  • 在Windows下,用Python从.txt文件中读取字符串,并用正则表达式匹配中文,在网上看了方法,用的时候发现中文没有被匹配。 txt文件中的内容如下: Python代码如下: 代码执行后,中文没有被匹配: ...
  • 第一步,先把字符串转为Unicode编码:file=str.decode('utf-8')#把utf-8的编码变成Unicode 第二步,利用正则表达式作为匹配匹配中文(可以用来在中文文章中去除所有标点)pattern = re.compile(u'[\u4e00-\u9fa5]+...
  • python正则表达式匹配中文,将中文放在2个list中匹配字符串,得不到结果,求解 核心代码如下 for i in range(len(w)): for j in range(len(k)): if re.search(str(w[i]),str(k[j]))!= None: m1 = min(j+1, a - j)...
  • python中最强大、最常用的就是字符串 str 了。当re模块进行正则匹配时,如果是中文字符就会出现问题,尤其近期项目中遇到很奇葩的问题,在win server上生成的解析文件是utf-8格式,但到win10上偏偏生成了 gb2312。 ...
  • 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配。接下来通过本文给大家介绍Python匹配中文的正则表达式,感兴趣的朋友一起学习吧
  • 最近在利用python匹配数据库中文字符串中的某些关键字时,遇到了字符串编码问题:  'ascii' codec can't encode characters...' 下面就来讨论一下此类问题的解决方法,先从一些基本操作入手: 1. Linux Shell...
  • python中文字符串处理问题 我 在一个python程序中要从一个中英文混合的文件中查找有没有用户输入的一个字符串。文件用Unicode存,程序中用Unicode字符串做,在 Linux下使用没有问题(配置合适的话小企鹅和cce都可以...
  • 网络请求获取的数据"综合保险公司" 读取长度时,并非6,而是18. 查看了原始数据,原来是u'\u7efc\...另外re模块中,涉及到中文匹配,一定要注意 待匹配匹配字段的编码格式是否一致,不要被IDE骗了. 转载于:https://ww...
  • 本来想能不能单独匹配中文或者英文,但是好多符号不想弄了… 就直接搜了匹配日文/韩文的正则表达式。 备注:匹配日文的好像只能匹配假名,如果是日文汉字就不行。 参考代码 import re str = '输入需要匹配的字符' ...
  • 正则匹配找到中文输出 import re str1 = 'hello,你叫什么名字?My name is 李小龙.' res1 = re.findall("[\u4e00-\u9fa5]+",str1) print(res1) str2 = 'hello,你叫什么名字?My name is 李小龙.' a = re....
  • 常见字符串匹配算法Python实现 class StringMatching(object): """常见字符串匹配算法""" @staticmethod def bf(main_str, sub_str): """ BF 是 Brute Force 的缩写,中文叫作暴力匹配算法 在主串中,检查...
  • 在学习《Designing Machine Learning Systems with Python》(中文名《机器学习系统设计——python语言实现》)一书中,第三章第二节第三小节部分的泊松分布的python代码在python3.6上运行时报错 TypeError: '>...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 249
精华内容 99
关键字:

python匹配中文字符串

python 订阅