반응형
Notice
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 프로그래밍언어
- 소프트웨어
- 소프트웨어공학
- 컴퓨터비전
- 네트워크
- 알고리즘
- 클라우드컴퓨팅
- 자료구조
- 웹개발
- 보안
- 자바스크립트
- 파이썬
- 데이터과학
- 데이터분석
- 네트워크보안
- Yes
- 코딩
- 컴퓨터공학
- 데이터구조
- 버전관리
- 컴퓨터과학
- 데이터베이스
- 인공지능
- 머신러닝
- 사이버보안
- 2
- I'm Sorry
- 딥러닝
- 빅데이터
- 프로그래밍
Archives
- Today
- Total
스택큐힙리스트
HTML의 p 태그를 한국어로 번역하세요.ICU 정규식을 사용하여 괄호 안에 포함되지 않은 숫자를 찾는 정규식 문제입니다. 본문
카테고리 없음
HTML의 p 태그를 한국어로 번역하세요.ICU 정규식을 사용하여 괄호 안에 포함되지 않은 숫자를 찾는 정규식 문제입니다.
스택큐힙리스트 2023. 11. 28. 06:57반응형
주어진 문자열에서 숫자를 찾으려고 합니다. 숫자는 v/v./vol/vol. 이후에 있으면 안되며, 괄호 안에 있으면 안 됩니다. 다음은 제가 작성한 내용입니다:
NSString *regex = @(?i)(?<!v|vol|vol\\.|v\\.)\\d{1,4}(?![\\(]{0}.*\\));
NSLog(@결과: %@, [@test test test 4334 test test stringByMatching:regex]);
NSLog(@결과: %@, [@test test test(4334) test test stringByMatching:regex]);
NSLog(@결과: %@, [@test test test(vol.4334) test test stringByMatching:regex]);
불행하게도 이 작업은 제대로 작동하지 않습니다. 정규식을 네 부분으로 나눌 수 있습니다:
(?i)
- 정규식을 대소문자 구분 없이 처리합니다.
(?<!v|vol|vol\\.|v\\.)
- v/v./vol/vol.에 대한 부정적 뒤쪽 참조 어설션입니다.
\\d{1,4}
- 찾고 있는 숫자, 1-4자리 숫자입니다.
(?![\\(]{0}.*\\))
- 부정적 전방 참조 어설션: 숫자는 )의 앞에 올 수 없으며, (가 있다면 예외입니다.
무덤 때문에, 뒤쪽 긍정 단언을 제외하면 작동합니다. 이곳에 문제가 뭔가요? RegexKitLite을 사용하는데, 이것은 ICU 정규식 구문을 사용합니다.
답변 1
당신의 부정적인 룩비힌드
는 위치가 잘못되었습니다. 룩비힌드는 입력 위치를 수정하지 않으며, \d{1,4}
표현식 이후에 부정적인 룩비힌드
가 와야합니다:
(?i)\\d{1,4}(?<!v|vol|vol\\.|v\\.)(?![\\(]{0}.*\\))
또는 동일한 목적을 달성하기 위해 부정적인 룩어헤드
를 사용하세요:
(?i)(?!v|vol|vol\\.|v\\.)\\d{1,4}(?![\\(]{0}.*\\))
답변 2
문자열에서 괄호 안에 포함되지 않은 숫자를 찾기 위해 ICU 정규식을 사용하는데 문제가 있습니다.ICU 정규식을 사용하여 괄호 안에 있는 숫자를 무시하고 괄호 밖에 있는 숫자를 찾으려는 경우, 다음과 같은 문제가 발생할 수 있습니다. 예를 들어, 저는 (123) 번호를 가지고 있습니다라는 문자열이 있다고 가정해 봅시다. 우리는 괄호 안에 있는 숫자를 무시하고 괄호 밖에 있는 숫자만 찾고 싶습니다. 그러나 기존 방법으로는 123이라는 값을 검색할 수 없을 것입니다.
이 문제를 해결하기 위해 우리는 신중한 접근 방법을 선택해야 합니다. 첫째, 문자열에서 괄호 안에 있는 모든 내용을 제거하는 것이 좋습니다. 이를 위해 다음 정규식을 사용할 수 있습니다: \([^)]*\). 이 정규식은 여는 괄호 (와 닫는 괄호 ) 사이에 있는 모든 문자열을 제거합니다.
다음으로, 괄호를 제거한 문자열에서 숫자를 찾기 위해 또 다른 정규식을 사용할 수 있습니다. 숫자를 검색하기 위해 \d+ 정규식을 사용할 수 있습니다. 이 정규식은 하나 이상의 연속된 숫자를 찾아줍니다. 이를 통해 괄호 안에 없는 모든 숫자를 찾을 수 있습니다.
마지막으로, 찾아진 숫자들을 사용할 때 SEO에 유의해야 합니다. 검색 엔진 최적화(SEO)를 고려해야 하는 이유는 올바른 키워드 사용과 내용의 유사성 등이 더 높은 검색 엔진 노출을 도와줄 수 있기 때문입니다.
따라서, ICU 정규식을 사용하여 괄호 안에 포함되지 않은 숫자를 찾기 위한 문제를 해결하기 위해 괄호를 제거하고 제거된 문자열에서 숫자를 찾습니다. 이를 통해 검색 엔진 최적화를 고려한 접근 방법을 적용할 수 있습니다.
반응형
Comments