正则表达式 - 匹配主题标签 (#) 之外的子字符串
Regex - Match substring outside of hashtags(#)
以这个字符串为例:
focus;focus#focus#focus focus
如果我想查找子字符串 focus
,我需要这个结果(匹配项以粗体显示):
focus;focus#focus#focus focus
据我所知:(?<!#)(focus)(?!#)
,演示 here。
这种模式显然不起作用,因为它排除了 #
旁边的子字符串,我也需要将它们包括在内。
从程序上讲,这就是我需要的:
if !(prefix == "#" && suffix == "#") {
// Is a match
}
您可以使用替代:
(?<!#)focus|focus(?!#)
这意味着如果前面没有 #
或后面没有 #
,则匹配 focus
。只有当两边都有 #
时,才会跳过 focus
。
以这个字符串为例:
focus;focus#focus#focus focus
如果我想查找子字符串 focus
,我需要这个结果(匹配项以粗体显示):
focus;focus#focus#focus focus
据我所知:(?<!#)(focus)(?!#)
,演示 here。
这种模式显然不起作用,因为它排除了 #
旁边的子字符串,我也需要将它们包括在内。
从程序上讲,这就是我需要的:
if !(prefix == "#" && suffix == "#") {
// Is a match
}
您可以使用替代:
(?<!#)focus|focus(?!#)
这意味着如果前面没有 #
或后面没有 #
,则匹配 focus
。只有当两边都有 #
时,才会跳过 focus
。