【发布时间】:2017-03-19 01:22:37
【问题描述】:
我正在尝试匹配一个字符串模式,而我的正则表达式是
/^[a-zA-Z0-9]*(-|\s)*Iphone 7(\s|-)?(\p{N}GB)?\B/i
我要匹配的字符串是Apple Iphone 7 Plus 16 Gb。我想匹配确切的正则表达式,即 Iphone 7 应该只与以下匹配
- [任何数字或字符串] 苹果 iphone 7
- [任何数字或字符串] 苹果 iphone 7 16 GB
- [任何数字或字符串] 苹果 iphone 7 32GB - 银色
- [任何数字或字符串] apple iphone 7 plus(不应匹配)
- [任何数字或字符串] apple iphone 7s(不应匹配)
请让我知道我做错了什么? 这是正则表达式link
【问题讨论】:
-
你为什么使用
[a-zA-Z0-9]*(-|\s)*而不是apple iphone,因为你说“它应该只与关注者匹配”? -
Apple Iphone 7 之前的所有功能都可以正常工作,因此只有最后一个不工作的部分
-
@SaggingRufus 是的,这就是问题所在。
-
apple iphone 7 plus(不应该匹配).....应该不匹配或者这不匹配.....清除这个混淆