Google BigQuery에서 정규식을 사용하여 아래 URL에서 제품 이름을 추출하려고합니다.
https://www.example.com/en/uk/product/clothing/trousers-leggings/cool-grey-joggers-9800977
제품 이름은 다음과 같아야합니다. cool-grey-joggers
https://www.example.com/en/uk/product/hot-denim-dress-7842666
제품 이름은 다음과 같아야합니다. hot-denim-dress
다음 정규식을 시도했습니다.
'/product/(.+)-[0-9]+$'
그러나 이것은 욕심 많은 일치하는 것처럼 보이며 반환됩니다.
clothing/trousers-leggings/cool-grey-joggers
hot-denim-dress
위의 다양한 변형을 시도했지만 모두 일치하지 않거나 너무 많이 캡처하고 있습니다.
상위 하위 폴더가 아닌 제품 이름 만 캡처하도록 수정하려면 어떻게해야합니까?
/product/
경로의 일부 여야하는 경우 :
/product/(?:[^/]+/)*([^/]+)-[0-9]+$
패턴은 다음과 일치합니다.
/product/
말 그대로 일치(?:[^/]+/)*
선택적으로로 끝나는 일치하는 부분을 반복 /
([^/]+)
캡처 그룹 1 , 다음을 제외한 모든 문자의 1+ 발생 일치/
-[0-9]+$
-
문자열 끝까지 일치 및 1+ 숫자이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다