2013-05-29 2 views
0

정규 표현식 유효성 검사를 처음 시도하면서 조금 혼란 스럽습니다. 사용자는 우리의 양식의 '이름'섹션과 같이 웁니다괄호로 묶인 이름의 정규식

Lastname, firstname (department). 

뿐만 아니라 그 라인을 따라

lastname-hyphenedname, firstname (some department). 

또는 아무것도 될 수 있습니다. 메신저는 괄호와 하이픈을 포함한 다양한 이름 형식을 사용하는 식을 찾기가 힘들다. 누구든지이 일에 대한 빠른 표현을 알고 있습니까? 아마 '(아마도 하이픈 또는 스페이스 나)와 다음, 콤마, 어쩌면 일부 공간이어서 제 이름'공백 또는로 구분하는 하나 개 이상의 하이픈의 부품 또는 부분을 포함 할 수있다

+2

적절한 정규 표현식을 작성하려면 특정 규칙이 필요합니다. –

+0

여러 개의 하이픈이있을 수 있습니까? 스미스 - 존스 - 브라운처럼? – Bohemian

+0

블로그 스미스, 제인 - 조 - 조 (그들의 부서)는 어떻습니까? – Isaac

답변

3

^([A-Za-z]+([-']?|\s+))*[A-Za-z]+,\s*([A-Za-z]+([-']?|\s+))*[A-Za-z]+\s*(\([A-Za-z\s]+\))?$

이름 일부 공백 (괄호 안에 공백이있는 이름). PCRE.

^(?i)([a-z]+(?:[ '-][a-z]+)*), (?1) \([^)]+\)\.$ 

을하지만 당신은 더 제한 될 수 있습니다

+0

'\ s'이 아니라'\ S'라고 생각한다. – Bohemian

+0

감사합니다. 수정 됨. – gamag

+0

고마워! 그랬어. 저는 정규 표현식으로 0 번 경험했으며 양식은 다소 흥미로운 구조를 가졌습니다. 충분히 이해할 수있는 온라인 안내서를 찾을 수 없었습니다. – user2069834

0

PCRE 정규식으로, 당신은이 작업을 수행 할 수 있습니다.

관련 문제