Regex 특수 조회

Overview : 특정문자 제외해서 찾기

1.앞문장이 공백~2 까지 이고, 뒤에서 .(모든단에서조사하여) cream|candy 없는 문장

Regular expression

Result

2.앞단어가 공백~2 까지이고, 조건에 맞는 그룹(1)에 맞으면 맨뒤 단어가 cream, 아니면 candy 인 문장

Regular expression

3. 조건 단어가 있으면 특정단어또는 문장 찾기 / 없으면 다른 문장 찾기

Regular expression

4. CHANGES CANCELLATIONS 이전 문장 개수

Regular expression

CHARGE라는 단어를 찾되, 끝에 ‘S’가 붙지 않은 경우

단어 경계(\b)를 사용하고 ‘S’가 없는 조건을 명시해야 합니다. 이를 위해 look-ahead assertion을 사용할 수 있습니다.

정규식은 다음과 같이 작성할 수 있습니다:

여기서 \b는 단어의 시작과 끝을 나타냅니다. CHARGE는 찾고자 하는 단어입니다. (?!\S)는 바로 뒤에 공백이 아닌 문자가 오지 않아야 함을 의미하는 negative look-ahead assertion입니다. 이는 ‘S’가 바로 뒤에 오지 않아야 한다는 조건을 만족시키는 방법 중 하나입니다. 마지막 \b는 단어의 끝을 나타냅니다.

단, 이 정규식은 “CHARGE” 뒤에 공백이나 문자열의 끝이 오는 경우에만 일치합니다. 만약 “CHARGE” 뒤에 다른 문자가 오는 경우도 포함하고 싶지만 ‘S’는 제외하고 싶다면, 정규식을 조금 더 조정할 필요가 있을 수 있습니다.