我正在尝试在一个字符串中匹配哈希标记,该字符串中也包含html元素。
所以我想匹配#然后回到第一个非单词字符,除非那个非单词字符在html元素中,在这种情况下继续。
我从基础案例的#[\w]*
开始,然后尝试用#[\w]*(?!([^<]+)?|>)
排除标签,但我没有获得快乐。
示例
First #Match1 tag then another #Mat<span class="tag"></span>ch2, #<span class="tag"></span>Match3.
匹配
#Match1
#Mat<span id="selectionBoundary"></span>ch2
#<span id="selectionBoundary"></span>Match3
不幸的是我无法剥离html元素,匹配应该包含元素。
由于
答案 0 :(得分:3)
看起来#([\w]|(<[^>]+>))*
将完成这项工作