开发者

pattern match issues with apostrophes

I have an expression that I want to modify. This ex开发者_JAVA百科pression, for the most part does what I want, however, I need to to also match for case insensitive.

I am matching names of people as well as business names. So, the following should be matched and currently is not:

tim's baKeRY

Here is the expression

#^[A-Z][a-z]+[ -][A-Z](\')?(?(1)[A-Z])[a-z]+$#


EDIT

Thanks to Gustav, I edited my expression to: #^[a-zA-Z]+[ -][a-zA-Z](\')?(?(1)[a-zA-Z])[a-z]+$#

This gives me case insensitivity which was part of what I needed but I also need to match something like tim's bakery


You can do /.../i in PHP to match case insensitive. If you want to correct what you have though, you need to observe that [A-Z][a-z]+ will match one initial capital letter and then the rest lower case. If you want to match both in the same, you need to do [A-Za-z]+.

Hope that helps!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜