2010-10-03 2 views
5

Я написал несколько RegExp pattren так:Совпадение прописные буквы и строчные буквы по RegExp

SomeText 

Но я хочу, чтобы соответствовать pattren с:

Sometext 
sOMeTeXt 
SOMETEXT 
SoMEteXt 

Somethings, как это!

На самом деле я хочу использовать этот

\s?[^a-zA-Z0-9\_]SomeText[^a-zA-Z0-9\_] 

что я должен делать?

+1

Какой язык или регулярное выражение вы используете? – Gumbo

ответ

5

Во многих регулярных выражениях реализаций можно указать modifiers, которые применяются в данной часть вашего рисунка. Case-нечувствительность один из этих модификаторов:

\s?[^a-zA-Z0-9\_](?i)sometext(?-i)[^a-zA-Z0-9\_] 

Участок между (?i) и (?-i) будет переведен в режим без учета регистра. Согласно this comparison table, это поддерживается, если вы используете .net, Java, Perl, PCRE, Ruby или JGsoft.

Конечно, так как вы указываете как a-z и A-Z в классах символов, можно упростить и использовать модификатор регистронезависимое по всей схеме:

/\s?[^a-z0-9\_]sometext[^a-z0-9\_]/i 
+0

Удивительно .. Большое спасибо –

7

использование игнорировать случай модификатор

/sometext/i 
+0

Спасибо .. Этот ответ не работает для меня –

7

В случае, если вы не можете использовать модификаторы:

[Ss][Oo][Mm][Ee][Tt][Ee][Xx][Tt] 
+0

Хорошая идея. спасибо –

0

Javascript: Работает как прописных и строчных письмо в любом порядке.

value.match(new RegExp(searchkey, "i")) 
Смежные вопросы