js正则表达式语法
|
前面的章节中,我讲到了几个代表抽象意义的特殊符号:"^","$","/b"。它们都有一个共同点,那就是:它们本身不匹配任何字符,只是对 "字符串的两头" 或者 "字符之间的缝隙" 附加了一个条件。理解到这个概念以后,本节将继续介绍另外一种对 "两头" 或者 "缝隙" 附加条件的,更加灵活的表示方法。 正向预搜索:"(?=xxxxx)","(?!xxxxx)" 格式:"(?!xxxxx)",所在缝隙的右侧,必须不能匹配 xxxxx 这部分表达式。 反向预搜索:"(?<=xxxxx)","(?<!xxxxx)" 3. 其他通用规则还有一些在各个正则表达式引擎之间比较通用的规则,在前面的讲解过程中没有提到。 3.1 表达式中,可以使用 "/xXX" 和 "/uXXXX" 表示一个字符("X" 表示一个十六进制数) 3.2 在表达式 "/s","/d","/w","/b" 表示特殊意义的同时,对应的大写字母表示相反的意义 3.3 在表达式中有特殊意义,需要添加 "/" 才能匹配该字符本身的字符汇总 3.4 括号 "( )" 内的子表达式,如果希望匹配结果不进行记录供以后使用,可以使用 "(?:xxxxx)" 格式 举例1:表达式 "(?:(/w)/1)+" 匹配 "a bbccdd efg" 时,结果是 "bbccdd"。括号 "(?:)" 范围的匹配结果不进行记录,因此 "(/w)" 使用 "/1" 来引用。 3.5 常用的表达式属性设置简介:Ignorecase,Singleline,Multiline,Global
4. 其他提示4.1 如果想要了解高级的正则引擎还支持那些复杂的正则语法,可参见本站 DEELX 正则引擎的说明文档。 4.2 如果要要求表达式所匹配的内容是整个字符串,而不是从字符串中找一部分,那么可以在表达式的首尾使用 "^" 和 "$",比如:"^/d+$" 要求整个字符串只有数字。 4.3 如果要求匹配的内容是一个完整的单词,而不会是单词的一部分,那么在表达式首尾使用 "/b",比如:使用 "/b(if|while|else|void|int……)/b" 来匹配程序中的关键字。 (编辑:PHP编程网 - 金华站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

