精华内容
下载资源
问答
  • python 完全匹配字符串

    2020-10-23 02:01:39
    [...] # 指代方括号中的任意字符 \d # 指代数字0-9 \D # 指代非数字 \s # 指代一切空格,包括tab制表符、空格、换行等 \S # 指代非空格 \w # 指代大小写字母、数字和下划线 \W # 指代非大小写字母、数字和...
    
    '''
    https://www.cnblogs.com/syw20170419/p/9749809.html
    . # 点可代表一切字符
    
    \ # 起转义作用
    
    [...] # 指代方括号中的任意字符
    
    \d # 指代数字0-9
    
    \D # 指代非数字
    
    \s # 指代一切空格,包括tab制表符、空格、换行等
    
    \S # 指代非空格
    
    \w # 指代大小写字母、数字和下划线
    
    \W # 指代非大小写字母、数字和下划线
    
    * # 匹配前面字符 >=0 次
    
    + # 匹配前面字符1次及以上
    
    ? # 匹配前面字符0次或1次
    
    {m} # 匹配m次
    
    {m,n} # 匹配m到n次
    
    {m,} # 至少匹配m次
    '''
    
    
    import re
    
    my_str = "abc .abc .abc1-abc"
    old="abc"
    new = "xxx"
    
    result = re.sub("\\b" + old + "\\b", new, my_str)
    result = re.sub(r"\b%s\b" % (old), new, my_str)
    result = re.sub("\." + "\\b" + "abc" + "\\b", new, my_str)
    result1 = re.findall("\." + "\\b" + "abc" + "\\b",my_str)
    print(result1)
    展开全文
  • import re lll="[订单]\nsndnum=27\n1=|消息类型|35|D|MSGTYPE|\n2=|委托合同号|11|6000|\n3=|证券代码|55|600600|\n4=|委托方式ordType|40|2|ORDTYPE|\n5=|交易所代码|100|SS|\n6=|买卖类别|54|1|BSDICT|\n7=|订单...
    import re
    lll="[订单]\nsndnum=27\n1=|消息类型|35|D|MSGTYPE|\n2=|委托合同号|11|6000|\n3=|证券代码|55|600600|\n4=|委托方式ordType|40|2|ORDTYPE|\n5=|交易所代码|100|SS|\n6=|买卖类别|54|1|BSDICT|\n7=|订单数量|38|9000|\n8=|委托价格|44|16|\n9=|指令方式|21|3|指令方式|\n10=|交易所证券代码|48|600666|\n11=|币种|15|CNY|\n12=|备注|58|new order message|\n13=|ClientID|109||\n14=|止损价StopPx|99||\n15=|TimeInForce|59||TIMEINFORCE|\n16=|onBehalfOfCompID|115||\n17=|ExecInst|18||\n18=|Account|1|QFPP|\n19=|SenderSubID|50||\n20=|TargetSubID|57||\n21=|SecurityType|167||SecurityType|\n22=|MaturityMonthYear|200||\n23=|OpenClose|77||OpenClose|\n24=|MaxPriceLevel|6183|||\n25=|SecondaryClOrdID|526|||\n26=|股东代码|8528||\n27=|ridcode|22||\n\n[撤单]"
    sss=re.sub("\[订单\]([\s\S]*?)\[撤单\]","[订单]22222[撤单]",lll)
    print sss
    
    展开全文
  • python字符串中提取数字

    万次阅读 多人点赞 2018-05-14 14:43:16
    ## ^ 匹配字符串的开始。 ## $ 匹配字符串的结尾。 ## \b 匹配一个单词的边界。 ## \d 匹配任意数字。 ## \D 匹配任意非数字字符。 ## x? 匹配一个可选的 x 字符 (换言之,它匹配 1 次或者 0 次 x 字符)。 ## x* ...

    1、使用正则表达式,用法如下:

    ## 总结
    ## ^ 匹配字符串的开始。
    ## $ 匹配字符串的结尾。
    ## \b 匹配一个单词的边界。
    ## \d 匹配任意数字。
    ## \D 匹配任意非数字字符。
    ## x? 匹配一个可选的 x 字符 (换言之,它匹配 1 次或者 0 次 x 字符)。
    ## x* 匹配0次或者多次 x 字符。
    ## x+ 匹配1次或者多次 x 字符。
    ## x{n,m} 匹配 x 字符,至少 n 次,至多 m 次。
    ## (a|b|c) 要么匹配 a,要么匹配 b,要么匹配 c。
    ## (x) 一般情况下表示一个记忆组 (remembered group)。你可以利用 re.search 函数返回对象的 groups() 函数获取它的值。
    ## 正则表达式中的点号通常意味着 “匹配任意单字符”
    

    2、解题思路:

    • 既然是提取数字,那么数字的形式一般是:整数,小数,整数加小数;

    • 所以一般是形如:----.-----;

    • 根据上述正则表达式的含义,可写出如下的表达式:"\d+.?\d*";

      • \d+ 匹配1次或者多次数字,注意这里不要写成*,因为即便是小数,小数点之前也得有一个数字;
      • \.? 这个是匹配小数点的,可能有,也可能没有;
      • \d* 这个是匹配小数点之后的数字的,所以是0个或者多个;

    3、代码如下:

    # -*- coding: cp936 -*-
    import re
     
    string="A1.45,b5,6.45,8.82"
    print re.findall(r"\d+\.?\d*",string)
     
    # ['1.45', '5', '6.45', '8.82']
    
    展开全文
  • 一、想的是直接把这些特殊字符循环去匹配 如下 text = 'uhfweiuohfhsaifdjfgyius[/;' spechars = '><{}[]!@“,‘' is_exist = False for c in spechars: if c in text: is_exist = True ...

        今天接到一个需求,客户给了一堆特殊字符,说不能允许某些字段中存在某某字符,然后想到了下面两个方法, 进行对比

    一、想的是直接把这些特殊字符循环去匹配  如下

        text = 'uhfweiuohfhsaifdjfgyius[/;'
        spechars =  '><{}[]!@“,‘'
        is_exist = False
        for c in spechars:
            if c in text:
                is_exist = True
                pass
        print(is_exist)

      这里看下这段代码的分析结果

    Total time: 4.1163e-05 s   # 总时长
    Function: strfor at line 98
    # Hits  调用次数    %Time: 耗时占用的百分比  Per Hit:每次调用占用的时间
    
    Line #      Hits         Time  Per Hit   % Time  Line Contents
    ==============================================================
        98                                           def strfor():
        99         1            4      4.0      2.9      text = 'uhfweiuohfhsaifdjfgyius[/;'
       100         1            2      2.0      1.5      spechars =  '><{}[]!@“,‘'
       101         1            1      1.0      0.7      is_exist = False
       102        12           14      1.2     10.2      for c in spechars:
       103        11           13      1.2      9.5          if c in text:
       104         1            2      2.0      1.5              is_exist = True
       105         1            0      0.0      0.0              pass
       106         1          100    100.0     73.0      print(is_exist)
       107         1            1      1.0      0.7      return True

    二 、直接取两个字符串的交集 这种方法不仅代码简单且执行效率要优于上述循环匹配 代码如下 

        text = 'uhfweiuohfhsaifdjfgyius[/;'
        spechars =  '><{}[]!@“,‘'
        is_exist = True if set(text).intersection(spechars) else False
        print(is_exist)

    这里是这段代码的分析结果

    Total time: 2.01308e-05 s   # 总时长
    Function: StrMatch at line 80
    Hits  调用次数    %Time: 耗时占用的百分比  Per Hit:每次调用占用的时间
    
    Line #      Hits         Time  Per Hit   % Time  Line Contents
    ==============================================================
        80                                           def StrMatch():
        81                                               """
        82                                               
        83                                               :return: 
        84                                               """""
        85         1            5      5.0      7.5      text = 'uhfweiuohfhsaifdjfgyius[/;'
        86         1            2      2.0      3.0      spechars =  '><{}[]!@“,‘'
        87                                               # anser = set(text).intersection(spechars)
        88         1           14     14.0     20.9      is_exist = True if set(text).intersection(spechars) else False
        89         1           44     44.0     65.7      print(is_exist)
        90         1            2      2.0      3.0      return True

     

    展开全文
  • B宮的唱 字符串的相关概念 Python字符串(回顾) 令字符串匹配和算法 进一步的模式匹配问题 正则表达式 Python的正则表达式 应用举例 数据结构和算法( Python语言版:字符串 裘宗燕,20173231 字符串 讨论字符串,首先要...
  • python实现 字符串匹配函数

    千次阅读 2019-04-16 20:04:58
    通配符是 shell 命令中的重要功能, ... 表示匹配任意 1 个字符, *表示匹配 0 个或多个字符。 请使用你熟悉的编程语言实现一个字符串匹配函数, 支持 ? 和 * 通配符。如 “a?cd*d” 匹配 “abcdaccd” ...
  • ## ^ 匹配字符串的开始。 ## $ 匹配字符串的结尾。 ## \b 匹配一个单词的边界。 ## \d 匹配任意数字。 ## \D 匹配任意非数字字符。 ## x? 匹配一个可选的 x 字符 (换言之,它匹配 1 次或者 0 次 x 字符)。 ## ...
  • python拆分固定字符串

    2013-08-29 15:10:45
    python正则匹配说明Python特别设计了原始字符串(raw string),需要提醒你的是,在写文件路径的时候就不要使用raw string了,这里存在陷阱。raw string就是用'r'作为字符串的前缀,如 r"\n":表示两个字符"\"和"n",...
  • '''字符串自带方法匹配开头和结尾str.startswith(string)和str.endswith(string):''' >>> filenames = 'files.txt' >>> filenames.startswith('file') True >>> filenames.endswi
  • python编程为3.6.6 复数表现形式为a+bi, a可以为任意正负数,b也是任意正负数 所以: &gt;&gt;&gt; import re &gt;&gt;&gt; patt = '-?\d+(\-|\+)\d+i' &gt;&gt;&gt; m =...
  • 1. 匹配普通字符串re.match('test','test').group() ## 输出:test ## 此时前后加‘r’结果都不会变2. 匹配含有正则匹配规则的字符串re.match('.','...# 正则'.'可以匹配任意字符,'\\.'只匹配 '.'re.match('\\\\d','\d')
  • 需求: 正则表达式匹配某个文本模式,但是它找到的是模式的最长可能匹配(因为是贪婪匹配 )。 而你想修改它变成查找最短的...str_pat=re.compile(r'"(.*)"') # 匹配引号包裹的任意文本,并编译 print(str_pat.f...
  • 字符串“127米”中提取数字127: 方法一、利用正则表达式 参考:https://zhidao.baidu.com/question/328905513600600605.html 用法: ## 总结 ## ^ 匹配字符串的开始。 ## $ 匹配字符串的结尾...
  • 一、对任意多的分隔符拆分字符串  字符串对象的split()方法只能处理非常简单的情况,而且不支持多个分隔符,对分隔符周围可能存在的空格也无能为力。  应该使用re.split(),需要小心正则表达式模式中的捕获组...
  • 使用正则表达式进行匹配。 [] : 字符集合 () : 分组 ? : 重复 0 ~ 1 次 + : 重复 1 ~ n 次 * : 重复 0 ~ n 次 ...$ 匹配字符串的末尾。 class Solution: # s字符串 def isNumeric(self, s): # write ...
  • python正则表达式从字符串中提取数字

    万次阅读 多人点赞 2018-10-15 17:42:39
    python字符串中提取数字 使用正则表达式,用法如下: ## 总结 ## ^ 匹配字符串的开始。 ## $ 匹配字符串的结尾。 ## \b 匹配一个单词的边界。 ## \d 匹配任意数字。 ## \D 匹配任意非数字字符。 ## x? 匹配一个可...
  • python中我们可以借助fnmatch模块,实现含通配符的字符串匹配。   1.常用通配符 符号 作用 * 匹配任何字符串/文本,包括空字符串;*代表任意字符(0个或多个) ls file * ? 匹配任何一个字符...
  • python字符串中提取数字 使用正则表达式,用法如下: ## 总结 ## ^ 匹配字符串的开始。 ## $ 匹配字符串的结尾。 ## \b 匹配一个单词的边界。 ## \d 匹配任意数字。 ## \D 匹配任意非数字字符。 ## x? 匹配一个可...
  • 例如想使用正则表达式来获取一段文本中的摘要部分,有两种...)(Introduction|INTRODUCTION)',re.DOTALL),DOTALL表示:点任意匹配模式 (2)re.compile('(Abstract|ABSTRACT)([\s\S]*)(Introduction|INTRODUCTION)'...
  • #!/usr/bin/env python # -*- coding:utf-8 -*- # Author: Jia ShiLin ... 两个字符串匹配,s,t,判断t在s中出现的次数, 如果s中有'?',那么问号代表一个任意字符 :return: ''' s = input() t = inpu...
  • python字符串中提取数据

    千次阅读 2019-06-24 10:35:38
    ## ^ 匹配字符串的开始。 ## $ 匹配字符串的结尾。 ## \b 匹配一个单词的边界。 ## \d 匹配任意数字。 ## \D 匹配任意非数字字符。 ## x? 匹配一个可选的 x 字符 (换言之,它匹配 1 次或者 0 次 x 字符)。 ## x* ...
  • 编写函数,接收一个任意字符串,返回其中最长的数字字串。要求使用正则表达式。 python题解 使用正则表达式re.findall,可以找到所有的数字, 其中+表示前面的字符匹配1个或多个。 \d表示匹配的是数字。 使用...
  • 转自:python3字符串与文本处理 阅读目录 1、针对任意多的分隔符拆分字符串 2、在字符串的开头或结尾处做文本匹配 3、利用shell通配符做字符串匹配 4、文本模式的匹配和查找 5、查找和替换文本 6、以不区分...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,215
精华内容 486
关键字:

python匹配任意字符串

python 订阅