我正在努力使用 javascript 中的正则表达式,它需要 # 之后的文本到第一个单词边界,但如果它是 url 的一部分,则不匹配它。所以
#test - 应该匹配 test
sometext#test2 - 应该匹配 test2
xx moretext#test3 - 应该匹配 test3
http://test.com#tab1 - 不应该匹配 tab1
我用链接替换散列后的文本(但不是散列字符本身)。文本中可以有多个散列,并且应该匹配所有散列(我想我应该使用 /g )。
匹配散列后的部分非常容易:/#\b(.+?)\b/g,但如果字符串本身以“http”开头,则不匹配是我无法解决的问题。我可能应该使用负面的环顾四周,但我在解决这个问题时遇到了问题。
任何帮助是极大的赞赏!