【问题标题】:Is there any way to count the number of times a string is present in another given string? [duplicate]有没有办法计算一个字符串在另一个给定字符串中出现的次数? [复制]
【发布时间】:2021-10-27 03:26:25
【问题描述】:

我试图创建一个程序,它返回某个字符串在主字符串中出现的次数。

main_string="ABCDCDC"

find_string="CDC"

print(main_string.count(find_string))

输出=1

.... 但是有2个CDC。有没有其他办法解决?

【问题讨论】:

    标签: python python-3.x string count libraries


    【解决方案1】:

    尝试使用regex:

    print(len(re.findall(fr"(?={find_string})", main_string)))
    

    或者尝试使用这个列表推导:

    x = len(find_string)
    print(len([main_string[i:x + i] for i in range(len(main_string)) if main_string[i:x + i] == find_string]))
    

    两个代码输出:

    2
    

    【讨论】:

    • 或者这个模式"(?=CDC)"
    • @Sujay 很好,编辑了我的答案
    • 也转义fr"(?={find_string})"
    • @Sujay Ah 是的编辑了我的答案
    猜你喜欢
    • 2014-05-26
    • 1970-01-01
    • 2011-07-01
    • 2011-07-13
    • 1970-01-01
    • 2014-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多