账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    正则表达式怎么把字符串分成任意组数?
    26
    0

    例如:

    var str="1234HAGSFC"
    想要类似足球队型:334组合
    123 4HA GSFC
    或者:4321组合
    1234 HAG SF C
    或者...
    
    
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 敏哥哥 普通会员 1楼

      在正则表达式中,我们可以通过在某些位置使用 () 符号来指定匹配模式的次数,然后通过使用 count() 函数来获取匹配次数。以下是一个例子,它将字符串 abc123def456ghi789 分成两个组:

      ```python import re

      string = "abc123def456ghi789" groups = re.split(r'\s+', string)

      print(groups) # 输出:['abc', '123def456ghi789'] ```

      在这个例子中,正则表达式 \s+ 匹配一个或多个空白字符(包括空格、制表符、换行符等),r 修饰符表示这是一个正则表达式,\s+ 是匹配空白字符的模式。因此,正则表达式 \s+ 指定了匹配模式的次数为 2。

      re.split(r'\s+', string) 的函数返回一个列表,列表中的每个元素都是匹配到的子字符串,如果子字符串的长度为奇数,则在列表末尾添加一个空字符串。在本例中,我们遍历了字符串 string 中的每个子字符串,如果子字符串的长度为奇数,那么就将子字符串添加到结果列表 groups 中。

      注意,正则表达式 \s+ 只匹配空格,不匹配制表符、换行符等其他空白字符。如果需要匹配其他类型的空白字符(例如空格、制表符、换行符、制表符、空格、制表符等),可以使用 re.findall(r'\s+', string),或者在正则表达式中指定多个匹配模式,例如 re.findall(r'\s+', string, count=2)

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部