通过RegExp匹配大写字母和小写字母
我写了一些像这样的正则表达式模式:
SomeText
匹配
Sometext
sOMeTeXt
SOMETEXT
SoMEteXt
但我希望模式与:类似的东西
!事实上我想用这个
\s?[^a-zA-Z0-9\_]SomeText[^a-zA-Z0-9\_]
我该怎么办?
I wrote some RegExp pattren like this :
SomeText
But I want the pattren to match with :
Sometext
sOMeTeXt
SOMETEXT
SoMEteXt
Somethings like that !
In fact I want to use this
\s?[^a-zA-Z0-9\_]SomeText[^a-zA-Z0-9\_]
what should i do ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
在许多正则表达式实现中,您可以指定应用于模式给定部分的修饰符。不区分大小写是这些修饰符之一:
(?i)
和(?-i)
之间的部分将被置于不区分大小写模式。根据此比较表,如果您使用 .net、Java、 Perl、PCRE、Ruby 或 JGsoft 引擎。当然,由于您在字符类中指定了
az
和AZ
,因此您可以简化并在整个模式上使用不区分大小写的修饰符:In many regex implementations, you can specify modifiers that apply to a given part of your pattern. Case-insensitivity is one of those modifiers:
The section between
(?i)
and(?-i)
will be put into case-insensitive mode. According to this comparison table, this is supported if you're using .net, Java, Perl, PCRE, Ruby or the JGsoft engine.Of course, since you're specifying both
a-z
andA-Z
in your character classes, you could simplify and use the case-insensitive modifier on the entire pattern:如果您无法使用修饰符:
In case you cannot use modifiers:
您可以使用忽略大小写修饰符:
You could use the ignore case modifier:
Javascript:可以以任何顺序使用大写和小写字母。
Javascript: Works both capital and small letter in any order.
如果您需要使用变量名称创建 regEx 并在不区分大小写的情况下进行全局比较,请使用下面的示例
let str = 'Basappa';
var regex = new RegExp(str, "gi");
In case if you need to create regEx using the variable names and compare globally with case insensitive use the below example
let str = 'Basappa';
var regex = new RegExp(str, "gi");