그래서 |
으로 둘러싸인 문자열을 일치시켜야합니다. 따라서 패턴은 단순히 r"\|([^\|]*)\|"
이되어야합니다. 맞습니까? 그럼에도 불구하고 : |
로 시작하는 문자열에My regex는 regex101에서 작동하지만 파이썬에서는 작동하지 않습니까?
>>> pattern = r"\|([^\|]*)\|"
>>> re.match(pattern, "|test|")
<_sre.SRE_Match object at 0x10341dd50>
>>> re.match(pattern, " |test|")
>>> re.match(pattern, "asdf|test|")
>>> re.match(pattern, "asdf|test|1234")
>>> re.match(pattern, "|test|1234")
<_sre.SRE_Match object at 0x10341df30>
그것은 단지 일치하는거야? 그것은 regex101에서 잘 작동하며 이것은 중요하다면 Python 2.7입니다. 나는 아마 여기 뭔가 바보 일 뿐이므로 어떤 도움을 주시면 감사하겠습니다. 감사! , 일치하는 문자열의 시작 부분에서만 에 대한 re.match()
검사하는 동안 어디 문자열에서 일치 re.search()
검사 (이 펄 기본적으로 않는 것입니다) :
감사 :이 경우 당신은 문자열의 어느 곳이 일치하는 항목을 찾을 수
re.search
또는re.findall
같은 것을 사용할 수 있습니다. –이 부분은 매우 혼란 스럽기 때문에이를 위해 문서를 작성합니다. –