2017-11-15 4 views
1

정규식을 처음 사용하고 있지만 지난 2 일 동안 연구를했으며이 사이트 및 다른 사이트에서 유사한 검색어를 많이 사용했습니다.적어도 하나의 문자와 적어도 하나의 자릿수를 포함하는 단어 일치

적어도 하나의 문자와 적어도 하나의 숫자가 포함 된 전체 단어을 찾을 수있는 식 (POSIX ERE)을 찾으려고합니다.

B/DIN/1분의 37 DU/32.Abb.31 P/NA.17 O/DIN/8분의 2,017 22/N.Abb : 즉, I는 이들 모두를 캡처하고자 .2

나는 많은 것을 시도하고 그 과정에서 몇 차례 내 소프트웨어를 망가뜨릴 수 있었지만, 아직 갈 수는 없다. 내 문제 중 하나는 단어 내에서 문자열이 아닌 기준을 충족하는 단어 전체를 찾을 수 있도록 내 문자열을 구문 분석하는 방법을 모르겠다는 것입니다.

나를 도와 줄 수있는 사람에게 대단히 감사합니다!

+0

는 유효하지 않은 단어 입력을 확장 : 그들을 결합

  • \S*[A-Za-z]\S*[0-9]\S*
  • \S*[0-9]\S*[A-Za-z]\S*

이 최종 식을 산출 . OS를 지정하십시오 – RomanPerekhrest

+0

참고 용으로 여기에서 나가겠습니다 : https://regexr.com/ 및 https://regex101.com/은 정규식 작성/테스트와 관련하여 훌륭한 자료입니다. –

답변

0

단어가 공백으로 구분되어 있다고 가정합니다. 이 경우, 디지트를 갖는 단어와 문자 두 정규식 표현으로 분할 될 수있다 : 0 또는 그 이상의 비 공백 문자에 의해

  • 0 이상의 비 - 공백 문자 뒤에 오는 문자로,이어서 숫자 뒤에 0 개 이상의 공백이없는 문자가 뒤따라옵니다.
  • 위와 같지만 숫자와 문자를 바꿉니다.

공백이 아닌 문자는 전체 단어가 캡처되었는지 확인합니다.

그 다음 정규 표현식에로 번역 :

(\S*[A-Za-z]\S*[0-9]\S*|\S*[0-9]\S*[A-Za-z]\S*)

+0

그리고 그것은 작동합니다! 훌륭한! 분명한 설명을 해주셔서 감사합니다. – IzaO

관련 문제