문자열에 연속적인 부분 문자열이 포함되어 있는지 확인하는 가장 좋은 방법은 무엇입니까?

함자

문자열에 특정 하위 문자열이 연속적으로 나타나는지 확인하는 가장 좋은 방법을 찾으려고합니다. 부울 값을 반환합니다. 예를 들어 전체 문자열이 문자열 내부에있는 경우에만 True를 반환합니다. 몇 가지 예제 테스트 사례 :

consecutive_checker(string='blaablaa', substring = 'a')
>>> True

consecutive_checker(string='blaablaa', substring = 'aa')
>>> False

consecutive_checker(string='blaablaa', substring = 'blaa')
>>> True

consecutive_checker(string='blaablaa', substring = 'baa')
>>> False

내 Apporach :

def consecutive_checker(string='blaablaa', substr = 'blaa'):
    count = string.count(substr)
    if count > 1:
        for sidx in range(len(string) - len(substr)+1):
            for ssidx in range(len(substr)+1):
                if string[sidx:sidx+ssidx] == string[sidx+ssidx:sidx+ssidx*2] == substr:
                    return True
    return False

효율성을 위해 다음과 같이 설명합니다.

  1. 하위 문자열이 두 번 이상 나타나는 경우에만 진행됩니다.
  2. 세로로 인덱스를 체리 픽
  3. 연속 된 부분 문자열이 발견되는 즉시 반환

그래서 어떻게하면 더 개선 할 수 있을지 생각하고있었습니다. count()전체 문자열을 반복하는 것이 매우 효율적이지만 내장 함수 처럼 보입니다 . 개선의 포인트가 될 수 있지만 필요할 때만 반복하는 안전망으로 사용했기 때문에 이것을 완전히 피할 수는 없습니다. 마찬가지로 세 가지 추악한 검사와 이중 for 루프는 효율성을 제공하지 않습니다. 그렇다면 어떻게 더 개선 할 수 있습니까? 어떤 제안이라도 환영합니다!

Barmar

당신은 이것을 정말로 지나치게 복잡하게 만들고 있습니다. 하위 문자열을 두 배로 늘리고 문자열에 나타나는지 확인하십시오.

def consecutive_checker(string, substr):
    return substr*2 in string

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

문자열에 특수 문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

검색 문자열의 일부가 문자열에 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

문자열에 JavaScript 코드가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

쿼리에서 반환 된 행이 문자열에 포함되어 있는지 확인하는 가장 효과적인 방법은 무엇입니까?

분류에서Dev

SQL의 문자열에 문자가 있는지 확인하는 가장 좋은 방법은 무엇입니까?

분류에서Dev

Ruby에서 문자열에 배열의 일부가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

열에 문자열이 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

TextView에 배열의 문자열이 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

두 문자열에 파이썬에서 동일한 문자와 숫자가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

Datatable 값에 문자열 입력의 일부가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

문자열에 알파벳 문자 또는 알파벳 문자와 숫자가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

문자열에 이메일이 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

Javascript에 문자열이 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

정규식 : 문자열에 2 개 이상의 대문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

정규식 : 문자열에 2 개 이상의 대문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

Java에서 null 또는 비어 있는지 확인하여 연결된 문자열을 반환하는 가장 좋은 방법은 무엇입니까?

분류에서Dev

Java에서 null 또는 비어 있는지 확인하여 연결된 문자열을 반환하는 가장 좋은 방법은 무엇입니까?

분류에서Dev

문자 배열에 C ++에서 루프가없는 문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

문자열에 목록에없는 문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

문자열에 숫자, 알파벳 및 특수 문자가 모두 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

부분적으로 다른 문자열을 포함하는 문자열을 확인하는 방법은 무엇입니까? (권장 자바)

분류에서Dev

함수를 사용하지 않고 문자열 집합에 다른 문자열이 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

일부 문자가 문자열에 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

문자열을 연속적이고 겹치는 단어 목록으로 분할하는 가장 비단뱀적인 방법은 무엇입니까?

분류에서Dev

변수에 특정 문자가 포함되어 있는지 확인하는 방법은 무엇입니까? PHP

분류에서Dev

일부 좌표가 배열에 포함되어 있는지 확인하는 가장 좋은 방법 (JavaScript)

분류에서Dev

SQL 쿼리에서 문자열에 정확히 두 단어가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

파이썬에서 range () 함수와 부울을 사용하여 문자열에 특정 문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

분류에서Dev

문자열이 알파벳 순서인지 확인하는 가장 좋은 방법은 무엇입니까?

Related 관련 기사

  1. 1

    문자열에 특수 문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

  2. 2

    검색 문자열의 일부가 문자열에 포함되어 있는지 확인하는 방법은 무엇입니까?

  3. 3

    문자열에 JavaScript 코드가 포함되어 있는지 확인하는 방법은 무엇입니까?

  4. 4

    쿼리에서 반환 된 행이 문자열에 포함되어 있는지 확인하는 가장 효과적인 방법은 무엇입니까?

  5. 5

    SQL의 문자열에 문자가 있는지 확인하는 가장 좋은 방법은 무엇입니까?

  6. 6

    Ruby에서 문자열에 배열의 일부가 포함되어 있는지 확인하는 방법은 무엇입니까?

  7. 7

    열에 문자열이 포함되어 있는지 확인하는 방법은 무엇입니까?

  8. 8

    TextView에 배열의 문자열이 포함되어 있는지 확인하는 방법은 무엇입니까?

  9. 9

    두 문자열에 파이썬에서 동일한 문자와 숫자가 포함되어 있는지 확인하는 방법은 무엇입니까?

  10. 10

    Datatable 값에 문자열 입력의 일부가 포함되어 있는지 확인하는 방법은 무엇입니까?

  11. 11

    문자열에 알파벳 문자 또는 알파벳 문자와 숫자가 포함되어 있는지 확인하는 방법은 무엇입니까?

  12. 12

    문자열에 이메일이 포함되어 있는지 확인하는 방법은 무엇입니까?

  13. 13

    Javascript에 문자열이 포함되어 있는지 확인하는 방법은 무엇입니까?

  14. 14

    정규식 : 문자열에 2 개 이상의 대문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

  15. 15

    정규식 : 문자열에 2 개 이상의 대문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

  16. 16

    Java에서 null 또는 비어 있는지 확인하여 연결된 문자열을 반환하는 가장 좋은 방법은 무엇입니까?

  17. 17

    Java에서 null 또는 비어 있는지 확인하여 연결된 문자열을 반환하는 가장 좋은 방법은 무엇입니까?

  18. 18

    문자 배열에 C ++에서 루프가없는 문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

  19. 19

    문자열에 목록에없는 문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

  20. 20

    문자열에 숫자, 알파벳 및 특수 문자가 모두 포함되어 있는지 확인하는 방법은 무엇입니까?

  21. 21

    부분적으로 다른 문자열을 포함하는 문자열을 확인하는 방법은 무엇입니까? (권장 자바)

  22. 22

    함수를 사용하지 않고 문자열 집합에 다른 문자열이 포함되어 있는지 확인하는 방법은 무엇입니까?

  23. 23

    일부 문자가 문자열에 있는지 확인하는 방법은 무엇입니까?

  24. 24

    문자열을 연속적이고 겹치는 단어 목록으로 분할하는 가장 비단뱀적인 방법은 무엇입니까?

  25. 25

    변수에 특정 문자가 포함되어 있는지 확인하는 방법은 무엇입니까? PHP

  26. 26

    일부 좌표가 배열에 포함되어 있는지 확인하는 가장 좋은 방법 (JavaScript)

  27. 27

    SQL 쿼리에서 문자열에 정확히 두 단어가 포함되어 있는지 확인하는 방법은 무엇입니까?

  28. 28

    파이썬에서 range () 함수와 부울을 사용하여 문자열에 특정 문자가 포함되어 있는지 확인하는 방법은 무엇입니까?

  29. 29

    문자열이 알파벳 순서인지 확인하는 가장 좋은 방법은 무엇입니까?

뜨겁다태그

보관