정규식 문자열에서 일치 항목을 반환하고 싶습니다. 정규식 문자열 :.NET 정규식 파싱을위한 정규식
(?<TICKER>[A-Z]+)(?<SPACE>\\s)(?<MONTH_ALPHA_ABBREV>Jan|Feb|Mar|Apr|May|Jun|Jul|Sep|Oct|Nov|Dec)(?<SPACE>\\s)(?<DAY>\\d+)(?<SPACE>\\s)(?<YEAR_LONG>[2][0][0-9][0-9])(?<SPACE>\\s)(?<STRIKE_DOLLAR>\\d+(?=[.]))[.](?<STRIKE_DECIMAL>(?<=[.])\\d+)(?<SPACE>\\s)(?<PUTCALL_LONG>Call|Put)
그리고 개방과 폐쇄 괄호의 외부 (대괄호 포함) 대괄호 내의 항목의 그룹 이름을 모두와 모두 일치 싶어. 이 정규식을 가지고 :
((?<=[<])([A-Z]|[_])+(?=[>]))|(\\[.\\])
그러나 이것은 괄호 안에 대괄호 항목을 반환합니다. 이러한 내가 상단에있는 정규식에서 원하는 경기입니다 구체적으로 (이 어떤 정규식에 대해 유연하게 할 필요가 염두에 두어야) : 당신이 당신의 정규식과 일치하는 경우
TICKER
SPACE
MONTH_ALPHA_ABBREV
SPACE
DAY
SPACE
YEAR_LONG
SPACE
STRIKE_DOLLAR
[.]
STRIKE_DECIMAL
SPACE
PUTCALL_LONG
@Chris : FYI, 정규 표현식은 C# 언어의 일부가 아니며 .NET Framework의 일부입니다. –
"메타 정규식"! 이봐 요, 당신은 두통을 앓고 있습니다 ... –
정규 표현식은 정규 언어를 기술하고 있습니까? 즉, 그들 자신은 * 정규 언어가 될 수 없다는 것을 의미합니다. 따라서 정규 표현식으로 정규 표현식을 파싱하는 것은 불가능합니다. – Tomalak