Regex 使用正则表达式解析自定义URI
我对正则表达式有问题 我目前正在使用php库来创建更易于阅读的查询字符串过滤器。 (,) 问题来自令牌Regex 使用正则表达式解析自定义URI,regex,regex-negation,regex-lookarounds,Regex,Regex Negation,Regex Lookarounds,我对正则表达式有问题 我目前正在使用php库来创建更易于阅读的查询字符串过滤器。 (,) 问题来自令牌value{{{value}} 正则表达式:/(=)\{(\S*)(\}&?\}$)/U 字符串:queryA={valueA1{{{valueA1a}}&valueA2{{valueA2a}}}&queryB={valueB1{{valueB1a}}和valueB2{{valueB2a}} 匹配项: valueA1{{valueA1a而不是valueA1{{{valueA1a}}&value
value{{{value}}
正则表达式:/(=)\{(\S*)(\}&?\}$)/U
字符串:queryA={valueA1{{{valueA1a}}&valueA2{{valueA2a}}}&queryB={valueB1{{valueB1a}}和valueB2{{valueB2a}}
匹配项:
而不是valueA1{{valueA1a
valueA1{{{valueA1a}}&valueA2{{{valueA2a}
而不是valueB1{{valueB1a
valueB1{{{valueB1a}}&valueB2{{{valueB2a}
}$
和}&
而不是}$
和}&
我想匹配{
和}
之间的所有表达式,而不匹配{{
}
您可以使用
/(=)\{([^}\s]*(?:}}[^}\s]*)*)}/
看
详细信息
-第1组:a(=)
字符=
-a\{
字符{
-第2组:([^}\s]*(?:}}[^}\s]*)*)
-除[^}\s]*
和WhiteAPCE之外的零个或多个字符}
-零次或多次重复:(?:}}}[^}\s]*)*
-文本}
子字符串}
-除[^}\s]*
和WhiteAPCE之外的零个或多个字符}
-a}
字符}