preg_match - 模式 - 括号内的最后一个单词
如果里面有超过 1 个单词,我尝试使用正则表达式来获取括号内的最后一个单词。在所有情况下都是 Baz
! KEYWORD (\Foo \Bar \Ban \Baz) "/" "Hello"
! KEYWORD (\Foo \Bar \Baz) "/" "Hello"
! KEYWORD (\Foo \Baz) "/" "Hello"
谢谢
I'm trying to use a regex to get the last word within the parentheses if there is more than 1 word inside. In all cases will be Baz
! KEYWORD (\Foo \Bar \Ban \Baz) "/" "Hello"
! KEYWORD (\Foo \Bar \Baz) "/" "Hello"
! KEYWORD (\Foo \Baz) "/" "Hello"
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
一种可能性是
解释
这个正则表达式起作用,因为它主动使用回溯来查找字符串中的“最后一次出现的某物”(即重复步骤#2,直到表达式的其余部分可以匹配 - 或者整个表达式失败)。
在这种情况下,某物是一个单词字符序列,前面是一个非单词字符,后面是一个右括号。
One possibility would be
Explanation
This regex works because it actively uses backtracking to find "the last occurrence of something" in a string (i.e. step #2 is repeated until the rest of the expression can match - or the entire expression fails).
In this case something is a sequence of word characters preceded by a non-word character and followed by a closing paren.