l 求教一个问题,关于正则表达式的
现在要写一个正则,要求是:“/${1}/${2}”,${1}处可以是处了"mobile"以外的任意字母或者数字,且不能为空,${2}处是任意非空字符串。
也就是${1}处如果是“mobile”就返回fase,如果是其它的非空字符串就返回true,求教怎么写。
---
应当使用断言
/((?<!mobile)[0-9z-a]*)/(.*?)
######回复 @小紫羽 : 恩~谢谢哈~我再想一下~感谢~######回复 @弧线之内 : 要么你用2楼的方法,你可以先判断 /(mobile)/(.) 然后 false 再取 /(.)/(.)######回复 @小紫羽 : 还是不行,这个只能检测是否包含mobile这个字符串,但是不能检测是否等于这个字符串######回复 @弧线之内 : js的话用这个 /((?!mobile)[0-9a-z])/(.*)######大哥,不行啊,这个表达式js检测不通过··###### 这种有逻辑判断的需求不建议用正则去实现,会把正则搞得很复杂
你可以把{1}和{2}用正则提取出来单独判断 ######不行啊,用的urlrewrite,没法提取 T.T######
var reg = /^/((?!mobile)\w+)/.+/; //JS
######回复 @弧线之内 : var reg = /^(?!(/mobile/))/\w+/.+/;######还是不行,如果写mobile1的话还是会返回false,应该要返回true的###### http://runjs.cn/code/iqpmnsqi
看看这个对不对
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。