UTF-8 문자 및 숫자, 대시 기호 (-
)와 일치하는 일반 표현식이 필요하지만 밑줄 (_
)과 일치하지 않습니다. 성공하지 않고 이러한 어리석은 시도를 시도 :RegEx : w - "_"+ "-"UTF-8
([\w-^_])+
([\w^_]-?)+
(\w[^_]-?)+
\w
는 속기 f를 또는 [A-Za-z0-9_]
이지만, u
수정자가 설정된 경우 UTF-8 문자와도 일치합니다.
누구나 나를 도와 줄 수 있습니까?
UTF-8 문자 및 숫자, 대시 기호 (-
)와 일치하는 일반 표현식이 필요하지만 밑줄 (_
)과 일치하지 않습니다. 성공하지 않고 이러한 어리석은 시도를 시도 :RegEx : w - "_"+ "-"UTF-8
([\w-^_])+
([\w^_]-?)+
(\w[^_]-?)+
\w
는 속기 f를 또는 [A-Za-z0-9_]
이지만, u
수정자가 설정된 경우 UTF-8 문자와도 일치합니다.
누구나 나를 도와 줄 수 있습니까?
이 시도 : 그것은 다음 승 \ (또는 대시)로 인코딩하고 아무것도에 대한 간단한 일치하는 문자가 단지 일치 된 것을 보장 제로 폭 lookbehind을 가지고 않습니다
(?:[\w\-](?<!_))+
밑줄이 아닙니다.
그렇지 않으면 당신은 선택할 수이 하나
더 설정 기반의 접근 방식은OK (대문자 W주의)이다
(?:[^_\W]|-)+
, 나는의 PHP의 맛에 유니 코드와 재미를 많이했다 PCREs : D 가 까꿍 사용할 간단한 해결책이 말한다 :
[\p{L}\p{N}\-]+
P {L}이 (확인서 노트 자격 아무것도 유니 코드 일치 : \ 아닌 단어 문자를, 따라서 밑줄 없음), \ p {N}은 숫자처럼 보이는 것과 일치합니다 (로마 숫자와 이국적인 것들을 포함).
\ - 이스케이프 처리 된 대시입니다. "
[\p{L}\p{N}\p{Pd}]+
: 반드시 필요한 것은 아니지만, 나는 따라서 다음 버전으로 초래하는 유니 코드에서 다른 대시 수십 있다는 것을 참고 ... 그것을 문자 클래스의 대시를 탈출 할 수있는 지점을하는 경향이 Pd "는 구두점 대시 (Punctuation Dash)로, 마이너스 대시 (-)를 포함하되 이에 국한되지는 않습니다. (참고로, 여기서 다시 밑줄이 없음).
\는 하이픈을 포함하지 않을 것입니까? – codaddict
@dionadar - 이것은 나를 위해 악센트 부호가있는 문자와 일치하지 않습니다. –
@codadict 내가 아는 한, 하이픈은 \ w에 포함되어 있지 않습니다. 심지어 그것이 그렇다고해도 상처를 입히지 않을 것입니다.) –
사용하는 언어가 확실하지 않지만 PERL에서 올바른 로케일이 설정되어 있으면 [[: alnum :] -] +를 쓸 수 있습니다.
알아두면 좋지만 PHP (PCRE 엔진)를 사용하고 있습니다. –
PHP와 Rubular (Ruby)에서 시도해보십시오. http://www.rubular.com/regexes/12922와 http://www.rubular.com/regexes/12923을 참조하십시오. –
작은 실수를 수정했습니다. –
"UTF-8 글자"에 대해 구체적으로 설명하십시오 - 영어 문자 만 원하지 않습니까? –
@meder : 영어 ** 및 ** 엑센트/외래 문자가 필요합니다. –